2016-04-05 77 views
-1

我需要找到song_title中有'ing'的所有歌曲。如何使用關鍵字來搜索sql中的列

所以,我寫下面的代碼:

select * 
from song 
where song_title = 'ing' 

但是,這顯示了所有SONG_TITLE它的名字是 'ING'。

如何獲取所有包含的'ing'song_title

+0

'select * from song where song_title like'%ing%'' –

回答

1

使用LIKE運營模式匹配如下:

SELECT* FROM song WHERE song_title LIKE '%ing%' 

如果您想選擇具有一定的字符串開始記錄,那麼你可以使用:

SELECT* FROM song WHERE song_title LIKE 'ing%' 

如果你想選擇記錄結束與一定的字符串,那麼你可以使用:

SELECT* FROM song WHERE song_title LIKE '%ing' 
+0

非常感謝你 – muge

+0

很高興能幫到你! :) –

0

select * from song where song_title like'%ing%';

對替換字符串使用類似的運算符。

1

作爲LIKE比較的替代方案,MySQL還具有REGEXP比較運算符。到SONG_TITLE包含字符串'ing'

WHERE song_title REGEXP 'ing' 

隨着LIKE比較只返回行,通配符的字符是'%'匹配任何字符的任意數目(0,1或更多),以及下劃線'_'匹配一個字符。搜索文字'%''_'字符,這些字符需要逃脫。

隨着REGEXP,有一大堆有特殊含義的字符。例如'^'匹配字符串的開始位置,'$'匹配字符串的末尾,方括號以及所有常用表達式中經常使用的其他字符。