簡體   English   中英

如何查詢逗號分隔的字符串?

[英]How to query comma separated string?

TABLE_A

column name: list_id
record 1: 1,2,5,6,8
record 2: 1,3,2
record 3: 6,7,2
record 4: 9,8,0

表-B

id ='2';

如何在逗號分隔的字符串中選擇id='2'記錄? 從上面的例子中,它應該返回記錄1,2和3。

查詢(如何修改此查詢?):

SELECT * FROM Table_a,Table_b WHERE Table_b.id = Table_a.list_id;

使用find_in_set函數,但它沒有優化的方式來規范化您的數據。

SELECT * FROM 
Table_a AS a 
JOIN Table_b AS b ON FIND_IN_SET(b.id,a.list_id)

這應該適合你

SELECT * FROM Table_a,Table_b WHERE Table_b.id = Table_a.list_id and 
concat(',',Table_a.list_id,',') like '%,2,%'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM