Я использую MySQL. Вот моя схема:SQL: наличие таблицы дважды в предложении FROM
Поставщики (с.и.д.: целочисленные, SNAME: строка, строка адреса)
части (PID: целочисленные, PNAME: строка, цвет: строка)
Каталог (с.и.д.: целое число, PID: целое, стоимость: реальная)
(первичные ключи выделены жирным шрифтом)
Я т участвовав написать запрос, который выбирает пару sid
с, которые поставляют ту же часть:
-- Find pairs of SIDs that both supply the same part
SELECT s1.sid, s2.sid
FROM Suppliers AS s1, Suppliers AS s2
JOIN Catalog ON s1.sid = Catalog.sid OR s2.sid = Catalog.sid;
MySQL дает мне эту ошибку:
ERROR 1054 (42S22): Unknown column 's1.sid' in 'on clause'
Что я делаю неправильно?
@wwosik: Я тоже, но с 'OR' это более вероятно, что они могут быть необязательный. –
Если я это хорошо понимаю, OP хочет пары поставщиков, которые поставляют вещь X. Он не хочет продуктов, которые поставляются только одним или ни одним поставщиком. Вот почему я удалил свой комментарий ... – user76035
@wwosik: Я добавил дополнительную информацию, но оригинал. запрос соединяется с тем же столбцом - значения будут дублироваться. –