[英]mysql query match exact string or number
我在MySQL
表中有結果。 我只需要在user_id中只有6而不是26的地方獲得結果。
id users_id
15 6,5
16 1,5
18 2,8
19 1,26
20 6,26
21 5,10
22 28,6
23 21,9
24 29,6
我正在使用MySQL查詢
SELECT * FROM WHERE users_id LIKE '%6%'
結果
id user_id
15 6,5
19 1,26 why is this here..
20 6,26
22 28,6
24 29,6
結果不正確。 我只需要:
id user_id
15 6,5
22 28,6
24 29,6
嘗試::
SELECT *
FROM tableName
WHERE user_id like '6,%' or user_id like '%,6' or user_id like '%,6,%'
SELECT *
FROM tableName
WHERE FIND_IN_SET(6, users_id) > 0 AND
FIND_IN_SET(26, users_id) = 0
資源
因為您的查詢檢查結果是否在每個位置都包含6。
顯然,26包含6 ...
您可以做(存在其他方式)
where (users_id like '6,%' or users_id like '%,6')
或不知道FIND_IN_SET或'OR',就可以:
id users_id 15 |6|5| 16 |1|5| 18 |2|6|
然后選擇user_id,例如“%| 6 |%”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.