Oracle SQL을 사용하고 있으며 함수 결과와 같은 여러 행을 그룹화하려고합니다. 예제를 통해 자세히 설명하려면 SQL : 'like'함수의 결과에 따라 '그룹화'할 수 있습니까?
이의 내가 열 중 하나와 테이블 MESA가 있다고 가정하자 큰 문자열입니다. 그리고 내가 행의 수를 계산하고 일치하는 특정 패턴
SELECT m.str, count(*)
FROM MESA m
WHERE m.str LIKE '%FRUIT%'
AND (m.str LIKE '%APPLE%' OR m.str LIKE '%ORANGE%')
그래서 의이 쿼리의 결과 가정하자입니다
FRUIT..afsafafasfa ... RED_APPLE 20
과일 YELLOW_APPLE ... ..afsafafasfa 12
FRUIT..afsafafasfa ... GREEN_APPLE 3
FRUIT..afsafafasfa ... PURPLE_ORANGE 4
FRUIT..afsafafasfa ... RED_ORANGE 45
는하지만 내 결과이 원하는 :
APPLE (35)
ORANGE 49
이 작업을 수행 할 수 있습니까? 그렇다면, 어떻게 그렇게? :)
댓글 및 코드 스 니펫을 매우 높이 평가합니다.
추 신 : 물론 질문과 결과는 위의 예보다 복잡합니다. 설명하기 쉽도록 간단하게 썼습니다.
건배 ..
그런 문자열은 어떻습니까? 'FRUIT..afsafafasfa ... ORANGE_APPLE'?;) – ThinkJet
예, 좋은 발언입니다. 내 경우에는 그러한 문자열을 가질 가능성이 거의 없습니다. 나는 그것이 순서의 순서에 달려 있다고 생각한다. – someone