Как решить проблему после INNER JOIN?


    | product_id | product_name | supplier_id |.... | price |
    |      1     |    Chairs    |      1      |.... |  18   |
    .........................................................
    |      14    |    Tofu      |      6      |.... | 23.25 |
    
    
    ________________________________________suppliers____________________________________
    | supplier_id |        supplier_name      |   countact_name  |.... |     phone      |
    |      1      |        Exotic Liquid      | Charlotte Cooper |.... | (171) 555-2222 |
    .....................................................................................
    |      10     | Refrescos Americanas LTDA |     São Paulo    |.... | (11) 555 4640  |

```        не могу разобрался, что не так после INNER JOIN я указал 


Отразить уникальные supplier_name компаний, поставляющих продукцию с ценой менее 20.



SELECT*
FROM suppliers
INNER JOIN products
ON suppliers.supplier_name = product.supplier_id
WHERE price <20;

Ответы (2 шт):

Автор решения: Konst
SELECT DISTINCT s.supplier_name
FROM suppliers s INNER JOIN products p
    ON s.supplier_id = p.supplier_id
WHERE p.price < 20
ORDER BY p.supplier_name

всегда используйте алиасы, сразу проще будет понять к какому объекту, что относится

→ Ссылка
Автор решения: Марина Николаева

Очень частая ошибка с неверным названием таблицы или столбца. Если пишет "not found" - проверяйте название.

    SELECT DISTINCT supplier_name \*выбираем уникальные имена*\
    FROM suppliers INNER JOIN products
    ON suppliers.supplier_id= 
    products.supplier_id \* а у Вас таблицы связаны неправильно - id и name. И внимательнее с названиями таблиц и столбцов*\
    WHERE price<20
→ Ссылка