Tôi đang sử dụng Oracle SQL và tôi muốn nhóm một số hàng khác nhau có kết quả chức năng 'thích'. Để xây dựng với một ví dụ:SQL: Có thể 'nhóm theo' theo kết quả của chức năng 'thích' không?
Giả sử tôi có một bảng MESA với một trong các cột là một chuỗi rất lớn. Và tôi đếm số lượng hàng phù hợp với mô hình cụ thể:
SELECT m.str, count(*)
FROM MESA m
WHERE m.str LIKE '%FRUIT%'
AND (m.str LIKE '%APPLE%' OR m.str LIKE '%ORANGE%')
Vì vậy, chúng ta hãy giả định là kết quả của truy vấn này là:
FRUIT..afsafafasfa ... RED_APPLE 20
FRUIT ..afsafafasfa ... YELLOW_APPLE 12
FRUIT..afsafafasfa ... GREEN_APPLE 3
FRUIT..afsafafasfa ... PURPLE_ORANGE 4
FRUIT..afsafafasfa ... RED_ORANGE 45
Nhưng tôi muốn kết quả của tôi là:
APPLE 35
CAM 49
Điều này có thể thực hiện được không? Nếu vậy, làm thế nào? :)
Nhận xét và đoạn mã được đánh giá cao.
PS: Tất nhiên truy vấn và kết quả phức tạp hơn ví dụ trên. Tôi chỉ viết nó như là vì sự đơn giản để giải thích.
Cheers ..
Các chuỗi như thế nào: 'FRUIT..afsafafasfa ... ORANGE_APPLE "?;) – ThinkJet
Vâng, đó là một nhận xét tốt. Đối với trường hợp của tôi, nó không phải là rất có khả năng có dây như vậy. Tôi đoán nó phụ thuộc vào thứ tự các trường hợp. – someone