Подскажите, пожалуйста, как я могу исправить этот запрос? У меня есть 3 таблицы БД.

  1. сетей.
  2. товары.
  3. Комментарии.

Запрос выглядел так, пока я не добавил таблицу «комментарии» (работала как положено):

SELECT networks.*, products.product, products.type 
FROM products 
JOIN networks ON products.id=networks.product_Id

И теперь я попытался изменить его с помощью дополнительной таблицы, и он не работает:

SELECT 
    networks.*, 
    products.product, 
    products.type, 
    comments.id AS comment_Id, 
    comments.newLine, 
    comments.lineComment AS comment, 
    comments.topComment, 
    comments.bottomComment 
JOIN networks ON products.id=networks.product_Id, 
ON comments.id=networks.comment_Id

Как я могу исправить этот запрос?

Спасибо за помощников :)

0
Elick Chitrit 13 Апр 2020 в 17:36

2 ответа

Вы присоединились к таблице сети с условием products.id = networks.product_Id . Но для таблицы комментариев вы указали условие comments.id = networks.comment_Id , но забыли присоединиться к таблице comments .

Пытаться

 SELECT networks.*, 
    products.product, 
    products.type, 
    comments.id AS comment_Id, 
    comments.newLine, 
    comments.lineComment AS comment, 
    comments.topComment, 
    comments.bottomComment 
    FROM products
    JOIN networks ON products.id=networks.product_Id
    JOIN comments ON comments.id=networks.comment_Id
0
mosharaf 13 Апр 2020 в 15:22

Я думаю, что это синтаксис, который вы после:

SELECT 
    n.*, 
    p.product, 
    p.type,
    c.id AS comment_id, 
    c.newLine, 
    c.lineComment AS comment, 
    c.topComment, 
    c.bottomComment 
FROM products p
INNER JOIN networks n ON p.id = n.product_id
INNER JOIN comments c ON c.id = n.comment_id

То есть: синтаксис для нескольких объединений FROM ... JOIN ... ON ... JOIN ... ON ....

Обратите внимание, что использование псевдонимов таблиц сокращает запрос и облегчает чтение и запись.

0
GMB 13 Апр 2020 в 14:37