2017-07-07 66 views
0

我有一個數據庫表有兩列,一列是ID,另一列是顏色。想象一下,我有3條線路在此表中數據如下:使用MySQL在字符串中查找確切的文本

ID: 1 => Colors: Blue; Yellow; Red; 
ID: 2 => Colors: Green; GreenYellow; Yellowgreen; Blue; 
ID: 3 => Colors: Yellow; Blue; 

如果我想打一個SQL調用知道是否有與黃色(黃剛,無綠黃或黃綠)寄存器。我該怎麼做? I'm,試圖:

$statement = $conexion->prepare("SELECT * FROM comentarios WHERE suscritos LIKE :suscritos"); 
$statement->execute(array(":suscritos" => "%Yellow%")); 
$todos_mis_mensajes = $statement->fetchAll(); 

ID的結果:1,2和3

$statement = $conexion->prepare("SELECT * FROM comentarios WHERE suscritos LIKE :suscritos"); 
$statement->execute(array(":suscritos" => "%Yellow_")); 
$todos_mis_mensajes = $statement->fetchAll(); 

ID的結果:沒有結果

$statement = $conexion->prepare("SELECT * FROM comentarios WHERE suscritos LIKE :suscritos"); 
$statement->execute(array(":suscritos" => "_Yellow%")); 
$todos_mis_mensajes = $statement->fetchAll(); 

ID r esults:3

+0

'(LIKE suscritos '黃色;%' OR suscritos LIKE '%黃色;%')' – BenM

+0

工作!創建一個響應,以便我可以驗證。謝謝! –

回答

1

只要把確切的 「黃」 字,沒有通配符。

%表示0個或多個字符。
「%Yellow%」表示所有帶黃色字的字符串。
「%黃色」表示以黃色結尾的所有字符串。
「黃色%」表示以黃色開頭的所有字符串。

_表示必須只有1個字符。 「_Yellow」在黃字之前有一個字符的所有字符串。 即:aYellow,bYellow
不可接受:abYellow,黃色

相關問題