Published: 23 May 2018 › Updated: 23 May 2018![[MySQL] 특정 문자 개수 세기](/nhc-explorer-cover.webp)
![[MySQL] 특정 문자 개수 세기](/nhc-explorer-cover.webp)
[MySQL] 특정 문자 개수 세기
문자열 컬럼내 '@'의 갯수를 알아내려고 찾았을때 아래 구문을 쓰는 내용을 보았다.
정말이지 대한민국은 머리 좋은 사람이 많은것 같다.. ㅎㅎ
SELECT
SUM((CHAR_LENGTH(Paper_list)-CHAR_LENGTH(REPLACE(Paper_list,'@',''))+1))
FROM T_NewsInfo WHERE Notice_Number IN ('0999427', '0999426')
전체문자갯수에서 찾고자하는 문자열을 공백으로 처리한 문자열갯수를 뺌
CREATE FUNCTION getStrCount ( inputdata varchar(250), searchStr varchar(250) )
RETURNS int
BEGIN
declare q int;
set q = char_length(inputdata) - char_length(replace(inputdata,searchStr,'');
RETURN(q);
END
select getStrCount (필드 또는 문자열,'찾고자 하는 문자열') from table;
MS-SQL
CREATE FUNCTION getStrCount (@inputdata nvarchar(max), @searchStr nvarchar(max) )
RETURNS int
AS
BEGIN
DECLARE @q int
SET @q = LEN(@inputdata) - LEN(REPLACE(@inputdata, @searchStr, ''))
RETURN @q
END
1차 카테고리가 누락된 데이터 조회
Select goodsno
, Left(category, 3) As 'depth1'
, Group_Concat(category) As 'cate'
, Max(Length(category)) / 3 As 'max_depth'
From gd_goods_link
Where Left(category, 3) = '005'
Group By goodsno, Left(category, 3)
Having Left(cate, 4) <> depth1+','
Select goodsno, depth1, cate, max_depth
, Sum((Char_Length(cate)-Char_Length(Replace(cate,',',''))+1)) -- 콤마 개수
From (
Select goodsno
, Left(category, 3) As 'depth1'
, Group_Concat(category) As 'cate'
, Max(Length(category)) / 3 As 'max_depth'
From gd_goods_link
Where Left(category, 3) = '005'
Group By goodsno, Left(category, 3)
Having Left(cate, 4) <> depth1+','
) As A
Leave [MySQL] 특정 문자 개수 세기 to:
Read more #mysql posts
Best Posts From 서방님
We have not curated any of seobangnim's posts yet. But you can encourage our curation team to review posts by visiting them regularly and by referring other readers. Because we give priority to frequently read content.