[英]Select value inside a comma separated string mysql
這是我已經思考了幾個小時,但仍然無法得到答案的東西。
因此,我有一個名為“ orders”的mysql表
+-----------------------------+
+ id | include +
+-----------------------------+
+ 1 | 4,7,9 +
+ 2 | 1,23,8 +
+ 3 | 11,6,3 +
+ 4 | 2,56,32,6 +
+-----------------------------+
當包含列中有一個數字時,我想選擇一行。
例如,我已經嘗試過:
SELECT * FROM `orders` WHERE `include` LIKE '%1%'
但是問題在於它同時選擇了第2行和第3行,因為數字“ 11”包含“ 1”。
我需要兩個查詢:何時包含表包含“ x”,以及何時包含表不包含“ x”。
有誰知道如何做到這一點?
SELECT * FROM `orders`
WHERE find_in_set(1, `include`) > 0
但是通常,更改表結構並在列中僅存儲一個值會更好。 這是數據庫規范化的第三條規則。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.