2014-04-16 164 views
0
SELECT ui.* 
FROM users_table as ui 
WHERE ui.id 
IN 
(
SELECT Group_concat 
(REPLACE 
(REPLACE 
(REPLACE(ac.user_id,',,','-'),',',''),'-',',')) AS au_users 
FROM email_access as uu 
LEFT JOIN bill_authorizationcodes AS ac 
ON ac.customer_id = uu.cust_id 
WHERE uu.user_id = 2 
AND ac.user_id !="" 
) 

它不是選擇所有的ID細節... 其選擇第一隻ID ....如何在IN()函數中使用group_concat?

+0

你檢查了他的@洛倫茲邁爾回答 – jmail

回答

1

您使用錯誤的做法。在不期望一個逗號分隔值的字符串,但值的列表。只是使用

SELECT ui.* FROM users_table as ui 
WHERE ui.id IN (
    SELECT ac.user_id 
    FROM email_access as uu 
    LEFT JOIN bill_authorizationcodes AS ac ON ac.customer_id = uu.cust_id 
    WHERE uu.user_id = 2 AND ac.user_id !="")