例如, 找出以下 remark 欄位資料,有值為 c, 而不是cd者.
ITEM REMARK
---------- -------------
aaa a,b
bbb b,d
ccc a, b ,c ,d
ddd ab,cd,e
方法:
1. 消除空白
2. 前後包逗點
3. 利用like比對資料, 如下,
select item, remark
from tb
where (','|| replace(remark,' ','') || ',') like ('%,c,%');
ITEM REMARK
---------- ------------
ccc a, b ,c ,d
Note: 進階一點,還可以將like的對象,與其他Table欄位關聯,像MySQL的例子這樣子...
SELECT B.item, sum(A.money) as A_money
FROM B, A
WHERE CONCAT(',', B.nos, ',') Like CONCAT('%,', A.id, ',%')
GROUP BY B.item;
沒有留言:
張貼留言
注意:只有此網誌的成員可以留言。