ошибка в mysqli запросе

203
27 апреля 2017, 17:14

имеется код запроса:

SELECT 
    n.id, 
    n.user_id, 
    n.from_id, 
    n.message, 
    n.image, 
    n.likes, 
    n.replies, 
    n.timestamp 
FROM 
    messages AS n 
LEFT JOIN 
    subscribe AS u_s 
ON 
    u_s.subscr_id = n.user_id 
WHERE 
    (
        u_s.user_id = {$_SESSION['id']} 
    OR 
        n.user_id = {$_SESSION['id']}
    ) 
    AND 
        u_s.display = 1 {$addon} 
    AND 
        n.display  = 1  
GROUP BY 
    n.id 
ORDER BY 
    n.id 
DESC 
LIMIT 25

но при выполнении выдает ошибку " Column 'display' in where clause is ambiguous. ", почему? указано ведь n.display = 1 AND u_s.display = 1 , то есть дисплеи прописаны для разных таблиц

Answer 1

Сделайте вывод указанного запроса в переменную и посмотрите ее содержимое на наличие дополнительных параметров, в идеале дебаггером или проще с помощью echo, print_r.

В какую-то переменную у вас все-таки идет вставка условия display без указания таблицы.

Сам запрос составлен верно.

READ ALSO
Для чего options.php в form action?

Для чего options.php в form action?

Когда нужно указывать в форме optionsphp ? В каких случаях это нужно делать? Допустим я создаю плагин с отдельной страницей настроек в меню "Инструменты"

390
Вывод ключа php

Вывод ключа php

Привет всем

219
Вывод список стран из ВК АПИ

Вывод список стран из ВК АПИ

Всем доброго времени сутокПытаюсь вывести страны ВК,но выдает ошибку

224
Как сменить версию php c 5.4 до 7 без отключения сайта? VPS

Как сменить версию php c 5.4 до 7 без отключения сайта? VPS

Apach 22, CentOS Linux 6 KVM, до этого устанавливал дома на ubuntu server

174