@dc65k

Как правильно сделать запрос с объединением таблиц?

Всем привет. Прошёл курс SQL, столкнулся со следующей задачей:

database.db3 (https://drive.google.com/file/d/10Q9DHIiBMRJgGx17I...)
docs - Документы
id - Идентификатор документа (его номер)
date - Дата создания документа
typeId - Тип документа (docTypes.id)
removed - Признак того, что документ удален

rows - Строки документов
id - Идентификатор строки документа
docId - Идентификатор документа, которому принадлежит строка (docs.id)
productId - Идентификатор товара (products.id)
quantity - Количество товара
removed - Признак того, что строка удалена

docTypes - Типы документов
id - Идентификатор типа документа
name - Наименование документа
removed - Признак того, что данный тип документов не используется

products - Продукты
id - Идентификатор товара
name - Наименование товара
image - URL изображения товара
price - Стоимость товара в рублях
removed - Признак того, что товар имеется в продаже

Необходимо выбрать все данные не удаленных и используемых документов (дата создания, тип документа, его номер и строки документа: наименование товара, его изображение, цена, количество, наличие в продаже). Строки должны следовать в порядке создания документов.

То есть вид должен быть такой:
2017-04-03 13:11:06 | Приход | 564564867361362 | ссылка | Аленка карамель 100г | 73.9 | 12 | 0


Пробовал сделать запросы и с помощью UNION и INNER JOIN, но не выходит получить нужный результат. Буду признателен любой помощи.
  • Вопрос задан
  • 42 просмотра
Решения вопроса 1
@VitalyChaikin
Открою одну тайну ) все sql запросы всего лишь отражают условие задачи ! Поэтому все что ты написал в условии и является sql запросом* Просто нужно заменить русские слова на операторы языка и переставить местами где надо ...
Необходимо выбрать все данные не удаленных и используемых документов
Необходимо SELECT * WHERE NOT docs.removed AND NOT docTypes.removed
теперь остается только добавить FROM таблица ; откуда будут выбираться данные, Если таблиц несколько связать их по условию связи;
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы