2016-07-18 6 views
-5
SELECT * FROM `sales_channels` 
WHERE channel_id In ('implode(',',Select channel_id from users)) 
+0

Kick the implode part out –

+0

Это секретная ошибка? – AD7six

+0

По крайней мере, скажите нам, что это за ошибка. Также улучшите форматирование кода: выделите весь свой код и нажмите кнопку кода над областью ввода текста. Кнопка кода выглядит как '{}' – BeetleJuice

ответ

1

Обратите внимание, что implode() является функцией PHP. Таким образом, он не может использоваться в запросе mysql.

В любом случае этого не нужно. Попробуйте следующее:

SELECT * FROM sales_channels 
WHERE channel_id IN (SELECT channel_id from users) 

Другой способ использования INNER JOIN.

SELECT * 
FROM sales_channels INNER JOIN users 
ON sales_channels.channel_id = users.channel_id; 

Вышеприведенный запрос вернет эти строки с соответствующими channel_id из обеих таблиц.

Здесь вы можете найти синтаксис MySQL JOIN.

+0

в channel_id в списке пользователей - это идентификатор – nibie

+0

. Да, я понимаю. Вы могли бы также присоединиться к этим двум таблицам, используя INNER JOIN. –

+0

будет отображаться только первый идентификатор – nibie

Смежные вопросы