Соединение двух таблиц базы данных Postgres с помощью запроса Node.js - PullRequest
0 голосов
/ 26 ноября 2018

Я продолжаю получать сообщение об ошибке: iisnode обнаружил ошибку при попытке добавить оператор JOIN в оператор запроса ниже, удалив "JOIN table_name2", после чего запрос работает.Как я могу исправить заявление, чтобы заставить его работать?Любые предложения?

const getUserById = (request, response) => {
  const id = parseInt(request.params.id)

  pool.query('SELECT * FROM table_1 JOIN table_2 WHERE "GTIN" = $1', [id], (error, results) => {
    if (error) {
      throw error
    }
    response.status(200).json(results.rows)
  })
} 

Таблица 1

      GTIN     |      gtinName  
--------+----------------+---------
26001087006846 |    Product Name

Таблица 2

      GTIN      |    nutrientTypeCode  
--------+-------------------+------------
 26001087006846 |        Protein
--------+-------------------+------------
 26001087006846 |         Energy

Желаемый результат

      GTIN     |    gtinName      |    nutrientTypeCode
--------+---------------+---------------------+------------
26001087006846 |   Product Name   |         FASAT

1 Ответ

0 голосов
/ 26 ноября 2018

Вы должны использовать JOIN и соответствующее условие on для JOIN для двух таблиц

    const getUserById = (request, response) => {
      const id = parseInt(request.params.id)

      pool.query('SELECT table_1.GTIN, table_1.gtinNAme, table_2.nutrientTypeCode 
                   FROM table_1 
                   JOIN table_2 ON table_1.GTIN =  table_2.GTIN
                   NWHERE table_1.GTIN = $1', [id], (error, results) => {
        if (error) {
          throw error
        }
        response.status(200).json(results.rows)
      })
    } 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...