臨時表通過讓程序員將單個複雜查詢分解爲多個相對簡單的查詢,並讓程序員臨時存儲結果以便在課程期間爲了不同的目的多次查詢它們而使程序員更容易該程序無需每次重新實例化。後者也使計算機更容易。可以說,磁盤子系統和CPU可以稍微休息一下。
前者的一個例子:假設你想獲得的所有記錄,其中:
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
你的程序,然後生成電子郵件稱讚爲銷售營業員,用cc到部門經理。
提取滿足上述任一條件的記錄的單個查詢可能會有點笨拙 - 對於一個厭倦的大腦或疲倦的眼睛在處理這種廢話的漫長一天後處理有點困難人們必須在大多數行業中應對。當然這是一個微不足道的例子;在生產系統中,條件往往比上述條件更加複雜,涉及計算和測試空值以及各種其他繁瑣的事情,這些事情可能會導致查詢語句變長並變成纏結紗線的球。
因此,如果您創建了臨時表,則可以使用滿足第一組條件的行填充臨時表,然後編寫第二個查詢來抓取滿足第二組條件的行,然後插入它們進入臨時表,並且 - 您的臨時表包含您需要使用的所有行,分兩步進行。
來源
2011-07-15 10:59:45
Tim