SQL中並無提供計算字符在字符串中出現的次數的函數,不過能夠經過下面的思路來等價實現:首先計算字符串的長度,而後將字符串的全部「r」刪掉,計算刪掉「r」之後的字符串
的長度,這兩個長度之差就是字符「r」在字符串中出現的次數。
MySQL,Oracle,DB2:函數
SELECT FName, LENGTH(FName) - LENGTH( REPLACE(FName,'r','') ) FROM T_Person
SELECT * from service_item t2, (SELECT SERVICEITEM_ID ,LENGTH(SERVICEITEM_IDENTITY) - LENGTH(REPLACE(SERVICEITEM_IDENTITY,'/','')) as 'len' FROM service_item )t1 WHERE t1.len = '0' and t2.SERVICEITEM_ID = t1.SERVICEITEM_ID;