2013-12-08 49 views
0

使用文本CSV場我有持有IDS CSV,有點像這個在IN詢問

id csvTextField 
2  38498734,2987349,5018,493850,12 

我試圖使用該字段的內容在user_id IN (CSV)查詢TEXT列。 我試過以下內容:

SELECT * FROM tbl2 WHERE tbl2.user_id IN (SELECT csvTextField FROM tbl1 WHERE tbl1.id=2) 

但是這似乎不起作用。

+0

用[13.5。 SQL語法的準備語句](http://dev.mysql.com/doc/refman/5.6/en/sql-syntax-prepared-statements.html)來獲得你所需要的。 – wchiquito

回答

1

您可以使用FIND_IN_SET(col, 'csv as string')函數來獲得所需的結果。

SELECT * FROM tbl2 
WHERE 
    FIND_IN_SET( 
    tbl2.user_id, 
    (select csvTextField FROM tbl1 WHERE tbl1.id=2) 
) > 0;