Table name: `team`
Column name: `team_members`
Column value1: 1,72,34 //these are userids [Row1]
Column value2: 72,38 [Row2]
Column value2: 10,3 [Row3]
現在我想匹配登錄用戶的ID是否存在於team_members
中。SQL:使用IN子句搜索列值
對於這一點,我火了如下的查詢:
<?php
$loginuserid = 72;
$query = 'SELECT * FROM `team` WHERE `team_members` IN ("'.$loginuserid.'")';
?>
預期結果:
It must return 2 rows: 1 and 2
但它不是這樣工作。它只返回row1。
請提出解決方案。
http://stackoverflow.com/questions/5033047/mysql-query-finding-values-in-a-comma-分隔字符串 –
從這段代碼看起來它甚至不會返回row1。你將不得不使用通配符%前後,因爲你不想要完全匹配,並且還有其他值 – Spidey
@Nimesh我使用LIKE子句使用%,但是當字符串包含像723這樣的數字時,它也會返回一行。這就是爲什麼我嘗試使用IN子句 –