table 'users'
id name tag
1 kfir 2,4,7,4
2 avi 1,3,2,5
3 sara 6,8,9,3,5
我怎麼只顯示用戶標記下的數字「5」?
我的代碼
$result_total = mysql_query("select * from users") or die(mysql_error());
$total = mysql_num_rows($result_total);
table 'users'
id name tag
1 kfir 2,4,7,4
2 avi 1,3,2,5
3 sara 6,8,9,3,5
我怎麼只顯示用戶標記下的數字「5」?
我的代碼
$result_total = mysql_query("select * from users") or die(mysql_error());
$total = mysql_num_rows($result_total);
這樣做:
$result_total = mysql_query("SELECT * FROM `users` WHERE FIND_IN_SET('5',`tag`)");
$total = mysql_num_rows($result_total);
也儘量不要使用MySQL和使用庫MySQLi代替。
-1,針對真正問題的貼切解決方法,此運算符只應[與真實集合一起使用](http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_find-in -組)。 –
謝謝!有用! :) – user2398456
@NielsKeurentjes,我用它甚至'文本'字段類型,它工作得很好。那麼它有什麼問題? – SAVAFA
斯普利特標記字段到一個單獨的表,所有的問題都會消失。每當開發者在數據庫文本字段中放入逗號分隔數據時,達賴喇嘛都會吃一隻小貓。 –
你能舉個例子嗎? – user2398456
這是基本的知識,每個基本的在線SQL課程都會包含它的例子。 –