Как корректно составить запрос на выборку?
Таблица 1 "short"
id | base | small
1 | первый | зеленый
2 | первый | красный
3 | первый | белый
4 | второй | алый
Таблица 2 "collect_s"
id | base | collect | count
1 | первый | лиловый | 2
2 | первый | бурый | 6
3 | первый | белый | 6
3 | второй | алый | 12
3 | третий | черный | 86
Помогите составить запрос, в результате которого будут найдены значения из первой таблицы, которые отсутствуют во второй таблице.
Например base = "первый", то должны быть найдены: зеленый и красный.
Дополнительно:
левый join по двум колонкам. Что то типа такого.
select * from short t1 left join collect_s t2 on t1.base = t2.base and t1.small = t2.collect where t2.base is null |
select * from short t1 left join collect_s t2 on t1.base = t2.base and t1.small = t2.collect where t2.base is null
- Увижу лично - с меня два пива. Спасибо!
- Максим Припадчев, а если условие отбора не много изменить, как можно добавить к отбору count? Например все 6-ки?
- Starvings, Так сложно сказать, что ты имеешь ввиду. Лучше отдельным вопросом и данные на вход, данные на выход, тогда кто-нибудь да подскажет.
- Максим Припадчев, Как составить запрос отбора с вдоийным условияем? на всякий случай ссылка. вдруг будут идеи.
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Для корректного составления запроса на выборку данных из базы данных вам необходимо использовать язык SQL (Structured Query Language). В зависимости от того, какая база данных вы используете (например, MySQL, PostgreSQL, SQLite и др.), синтаксис запросов может немного отличаться, но основные принципы остаются примерно одинаковыми.
Для начала, вам необходимо использовать ключевое слово SELECT, за которым идут названия столбцов, которые вы хотите выбрать из базы данных. Если вам нужно выбрать все столбцы, вы можете использовать символ "*". Например:
SELECT * FROM table_name;
Здесь "table_name" - это название таблицы, из которой вы хотите выбрать данные.
Если вам нужно выбрать только определенные столбцы, вы можете перечислить их через запятую. Например:
SELECT column1, column2 FROM table_name;
Далее, вы можете добавить условия для выборки данных с помощью ключевого слова WHERE. Например, если вы хотите выбрать данные, где значение в столбце "column1" равно определенному значению, вы можете написать запрос следующим образом:
SELECT * FROM table_name WHERE column1 = 'value';
Также, вы можете использовать операторы сравнения (например, "=", ">", "=", "<=", "") и логические операторы (например, AND, OR, NOT) для более сложных условий выборки.
Важно помнить, что при работе с базами данных необходимо учитывать безопасность данных и использовать параметризованные запросы для защиты от SQL-инъекций.
Надеюсь, данная информация поможет вам корректно составить запрос на выборку данных из базы данных. Если у вас возникнут дополнительные вопросы, не стесняйтесь задавать.