2014-08-28 31 views
0

我想很多做這樣的查詢MySql的選擇,其中項目是在一個列表

SELECT * from TableA WHERE ColumnA IN (LIST) 

基本上我想建立一個逗號分隔列表或東西,並確保在ColumnA的值是在名單。

我可以做一個子查詢,但我已經有我需要在我的應用程序列表,並不想再次查詢它。

+0

那麼,究竟*是什麼*是你的問題?將已知的字符串轉換爲逗號分隔的列表,否則? – Terry 2014-08-28 22:41:16

+0

你的應用程序是什麼? PHP與PDO? – user1032531 2014-08-28 22:45:21

回答

0

您可以輕鬆地做到這一點。

如果您ColumnA數據類型是某種形式的文本數據類型的,你應該寫你的程序來生成這樣的查詢:

SELECT whatever FROM TableA WHERE ColumnA IN ('brillig','slithy','tove','gyre') 

注意逗號分隔字符串列表,並注意字符串用'單引號分隔。

如果您使用綁定變量,則需要綁定字符串變量。準備好的查詢將如下所示。

SELECT whatever FROM TableA WHERE ColumnA IN (?,?,?,?) 

使用列表作爲綁定變量沒有什麼魔力(除了在ColdFusion中)。您需要逐個綁定變量。

相關問題