SQL # Tempová tabulka – Rozdíl mezi # a ## temp tabulkou

Tempová tabulka s hashtagem # nebo ## je dočasná tabulka, která je uložena v systémové databázi tempdb. Tabulka existuje pouze po dobu, po kterou je otevřena user session ID. Rozeznáváme 2 typy tempových tabulek:

  • Lokální # tempová tabulka – je přístupná pouze v rámci dané session, tzn vidí ji pouze uživatel vykonávající skript
  • Globální ## tempová tabulka – je přístupná z různých sessions, to znamená, že s ní mohou pracovat i ostatní uživatelé

Lokální # tempová tabulka

Lokální tempovou tabulku založíme jednoduše v rámci session 1:

SELECT 1 AS Number
INTO #Temp_table;

Lokální temp tabulka - ukázka

Pokud si otevřeme novou session (2) a spustíme dotaz na tuto tempovou tabulku, tak dostaneme chybuInvalid object name ‘#Temp_table’, protože temp tabulka je založena v session 1 a druhá session na ni nevidí

Lokální tempová tabulka - dotaz z jiné session - ukázka

Globální ## temp tabulka

V původní session 1 si založme pro změnu stejnou tabulku, ale tentokrát bude globální (##Temp_table):

Globální tempová tabulka - ukázka

Když se teď dotážeme na tabulku z jiné session, tak dostaneme výsledek, protože tentokrát na tabulku jiná session vidí:

Globální tempová tabulka - dotaz z jiné session - ukázka

5/5 - (3 votes)
Rubrika: MS SQL Server SQL příkazy

O Ing. Jan Zedníček - Data Engineer & Controlling

Jmenuji se Honza Zedníček a působím jako data engineer freelancer. Během cca 10 let jsem zde shromáždil přes 600 IT case studies, průvodců, návodů a tipů určených zejména odborné veřejnosti, studentům a zájemcům o informace z oblastí Data Engineeringu, korporátních financí a reportingu. Zaměřuji se především na Microsoft technologie (on-prem i cloud) a různé synergické efekty v rámci jejich produktového portfolia pro dataře a finanční profesionály. Věnuji se také dalším platformám a významným hráčům z oblasti open source technologií. 🔥 Pokud vám tento článek pomohl, ocením referenci na vašem webu nebo zmínku v komunitě. A mám pro vás ještě tip: řešíte-li nějaký zapeklitý Excel problém, přihlašte se do naší Excel Facebook skupiny (2.4k+ členů), kde si pomáháme Excel CZ/SK diskuse ».

Leave a Reply

Your email address will not be published. Required fields are marked *