카테고리 없음

[mysql] 세 단어 이상으로 구성된 모든 고객 이름을 찾습니다 (예 : King George V).

행복을전해요 2021. 3. 2. 01:34

MySQL 솔루션 :

a name공백 문자로 구분 된 단어가있는 경우

다음을 시도하십시오.

select name from customers 
where ( length( name )
        -
                length( replace( name, ' ', '' ) ) + 1
                      ) >= 3
                      
-------------------

t-sql에서 like 절은 여러 와일드 카드 검사를 포함 할 수 있습니다. 예 : SELECT * FROM Customers WHERE Name like '% % %'

두 개의 공백이 포함 된 이름을 반환합니다.

-------------------

이름 사이의 간격이 일치하면이 논리를 사용할 수 있습니다.

SELECT  LENGTH(name)-LENGTH(REPLACE(name,' ',''))
FROM customers
-------------------

또는 SQL에 길이 기능이없는 경우에도 시도해 볼 수 있습니다 (온라인 운동을 할 때의 상황입니다 ...) 위의 답변에서 영감을 얻음

SELECT name FROM customers WHERE (replace(name,' ','*')) LIKE '%*%*%'


출처
https://stackoverflow.com/questions/22089834