Как написать несколько запросов, где каждый запрос зависит от результатов предыдущего запроса (sqlite) - PullRequest
0 голосов
/ 16 февраля 2019

Проблема: у меня есть 4 таблицы (элементы, пользователи, отзывы и комментарии).Мне нужно получить отзывы на основе наименования товара, этот запрос прост

SELECT * FROM Reviews WHERE item_id =(SELECT id FROM Items WHERE itemname=${itemname})

Но тогда, основываясь на Reviews.id , Reviews.author Мне нужно получить всю информацию от пользователей (имя пользователя,аватар и т. д.) и комментарии (тело, дата и т. д.).Не знаете, как скомпоновать запросы, а затем отформатировать их в необходимой форме

{
  id: "some id",
  date: "some date",
  author: 
    {id: "user id",
    avatar: "avatar url",
    username: "some username"},
  body: "review text",
  rating: "some number",
  item_id: "",
  comments: {
    id: "comments id",
    date: "comment date",
    author: {
      id: "user id",
      avatar: "avatar url",
      username: "some username"},
      replied_to_id: "",
  }
}

Как это можно сделать?Запрос 3 таблиц и форматирование данных, чтобы их можно было отправить в виде

[
   {review1 with comments},
   {review2 with comments},
    ...,
   {reviewN with comments}
]

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...