특정 시퀀스가 발생하는 횟수를 계산하려고합니다. 'DS-PP', 'WQ-PP', 'FF-PP', 'DS-PP', 'DS-PP', 'FF'와 같은 문자로 'testT' -PP ' 나는 결과가 나는 그것을 달성 할 수있는 방법동일한 접두사를 공유하는 여러 값의 수를 표시하는 방법은 무엇입니까?
DS-PP - 3
FF-PP - 2
WQ-PP - 1
처럼되고 싶어요. 지금까지 가지고있어
SELECT count(testC) from testT where testC like '%-PP%' group by testC
이것은 나에게 카운트를 준다. 그러나 doesnt는 그것을 말한다. DS-PP를 얻기 위해 select에 뭔가를 추가해야합니다.
참고 : testC 열에는 'DP-PP was here'라는 텍스트 (텍스트 필드)가있을 수 있습니다. 나는 그것이 단지 DP-PP를 보여주기를 원한다. 전체 문장이 가능하지는 않다.
확인이 http://sqlfiddle.com/#!2/f0c29/1
SQL은 where 절에 비슷한 조건으로 언급 된 열이 없다는 것을 어떻게 알 수 있습니까? –
실제 질문을하고 적절한 태그를 사용하십시오. 나는 약간의 편집을했지만, 모든 이야기를 깔끔하게 보여주지는 않습니다. * 실제 데이터 * 및 * 현재 쿼리 결과 *를 포함하십시오. - 여기에는 'DP-PP was here'와 같은 예제 데이터가 포함되어야하며 하단의 매우 작은 메모에서 손실됩니다. – user2246674
어쨌든, 내 권장 사항 (de-normalization을 제거하는 스키마를 수정하는 옵션이 아닌 경우)은 중첩 쿼리를 사용하고 ['SUBSTR'] (http://dev.mysql.com/doc/refman/ 5.7/ko/string-functions.html # function_substr)을 선택하십시오. 인덱스 사용에 부정적인 영향을 줄 수 있습니다. – user2246674