Union all sql
Автор Олег Дрозд задал вопрос в разделе Другие языки и технологии
В чем принципиальное различие в sql оператора Join от Union? Чем принципиально отличаются? Где используются? и получил лучший ответ
Ответ от Александр Свиридов[гуру]
Ха-ха! На самом деле и JOIN и UNION делают одно и то же - объединяют SELECT запросы.
Только JOIN добавляет столбцы в результирующую таблицу,
а UNION пририсовывает к концу имеющейся таблицы ещё одну.
JOIN полезен если есть некая таблица и захотели выбрать связанные записи. Например, взяли таблицу "продажи" и дополнительно выбрали наименование клиента у каждой операции. Склеивание таблиц пойдёт по внешним ключам.
UNION полезен если нужно соединить 2 таблицы. К примеру ситуация. Есть продажи оптовые, хранятся в таблице оптовых продаж. И розничные. В таблице розничных продаж. Делаешь
select ...from "оптовые"
union
select ...from "розничные"
Только надо помнить что union требует одинаковости колонок во всех SELECT.
И получаешь суммарные продажи по всему предприятию.
UNION - это объединение множеств одинаковых кортежей, JOIN - создание нового множества кортежей на основе исходных множеств. UNION может дать пустое множество только если все исходные множества пусты, JOIN - если не выполнится условие создания множества.
JOIN выполняет объединение в рамках одного запроса, а UNION выполняет объединение из двух и более запросов.
SQL-инъекция
а ты входные параметры фильтруешь?
на всякий:
function sqlcheck($var)
{
подробнее...