Временные таблицы облегчают работу программиста, позволяя программисту разбивать один сложный запрос на несколько относительно простых запросов, а также позволяя программисту временно сохранять результаты, чтобы к ним можно было обращаться несколько раз для различных целей в течение программа без необходимости повторного использования каждый раз. Последнее также облегчает работу компьютера. Дисковая подсистема и процессор могут, так сказать, немного отдохнуть.
Пример первого: допустим, вы хотите получить все записи, где:
the sale was in the eastern division
and involved one of the several new gizmos introduced last quarter
and occurred during the special 5-day bonanza sale
or
the sale was made by the boss's daughter
who floats from division to division
and the sale occurred at any time during the month of May
После этого ваша программа сгенерирует электронное письмо с благодарностью продавцу за продажу и отправит копию менеджеру отдела.
Один запрос, который выбирает записи, удовлетворяющие любому из указанных выше наборов условий, может стать немного громоздким - просто немного сложным для разбитого мозга или усталых глаз, чтобы справиться после долгого дня работы с подобным дерьмом. приходится иметь дело с большинством слоев общества. Конечно, это тривиальный пример; в производственной системе условия часто являются более сложными, чем описанные выше, и включают вычисления и тесты для нулевых значений и всевозможные другие утомительные вещи, которые могут привести к тому, что оператор запроса будет длинным и превратится в клубок запутанной пряжи.
Таким образом, если вы создали временную таблицу, вы можете заполнить временную таблицу строками, которые удовлетворяют первому набору условий, а затем написать второй запрос, который захватывает строки, удовлетворяющие второму набору условий, и вставить их в временная таблица тоже, и вуаля - ваша временная таблица содержит все строки, с которыми вам нужно работать, в два шага ребенка.