STL_DELETE - Amazon Redshift

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

STL_DELETE

分析查詢的刪除執行步驟。

所有使用者都可看見 STL_DELETE。超級使用者可以看見所有資料列;一般使用者只能看見自己的資料。如需詳細資訊,請參閱 系統資料表和檢視中資料的可見性

注意

STL_DELETE 只包含在主叢集上執行的查詢。但不包含在並行擴縮叢集上執行的查詢。若要存取在主要和並行擴縮叢集上執行的查詢,建議您使用 SYS 監視檢視 SYS_QUERY_DETAIL。SYS 監視檢視中的資料會格式化為更易於使用和理解。

資料表欄

欄名稱 資料類型 描述
userid integer 產生項目的使用者之 ID。
query integer 查詢 ID。查詢欄可用於加入其他系統表格與檢視。
分割 integer 識別執行查詢之配量的數字。
segment integer 識別查詢區段的號碼。
step integer 執行的查詢步驟。
starttime timestamp 查詢開始的時間,以 UTC 表示。總時間包括佇列和執行。秒小數部分的精確度為 6 位元。例如:2009-06-12 11:29:19.131358
endtime timestamp 查詢完成的時間,以 UTC 表示。總時間包括佇列和執行。秒小數部分的精確度為 6 位元。例如:2009-06-12 11:29:19.131358
tasknum integer 指派執行步驟的查詢任務程序編號。
rows bigint 已處理的列總數。
tbl integer 表格 ID。

範例查詢

為了要在 STL_DELETE 中建立一個資料列,下列範例會將一個資料列插入至 EVENT 資料表,然後刪除它。

首先,將一個資料列插入至 EVENT 資料表,然後驗證是否已插入它。

insert into event(eventid,venueid,catid,dateid,eventname) values ((select max(eventid)+1 from event),95,9,1857,'Lollapalooza');
select * from event where eventname='Lollapalooza' order by eventid;
eventid | venueid | catid | dateid | eventname | starttime ---------+---------+-------+--------+--------------+--------------------- 4274 | 102 | 9 | 1965 | Lollapalooza | 2008-05-01 19:00:00 4684 | 114 | 9 | 2105 | Lollapalooza | 2008-10-06 14:00:00 5673 | 128 | 9 | 1973 | Lollapalooza | 2008-05-01 15:00:00 5740 | 51 | 9 | 1933 | Lollapalooza | 2008-04-17 15:00:00 5856 | 119 | 9 | 1831 | Lollapalooza | 2008-01-05 14:00:00 6040 | 126 | 9 | 2145 | Lollapalooza | 2008-11-15 15:00:00 7972 | 92 | 9 | 2026 | Lollapalooza | 2008-07-19 19:30:00 8046 | 65 | 9 | 1840 | Lollapalooza | 2008-01-14 15:00:00 8518 | 48 | 9 | 1904 | Lollapalooza | 2008-03-19 15:00:00 8799 | 95 | 9 | 1857 | Lollapalooza | (10 rows)

現在,刪除您已新增至 EVENT 資料表的資料列,然後驗證是否已刪除它。

delete from event where eventname='Lollapalooza' and eventid=(select max(eventid) from event);
select * from event where eventname='Lollapalooza' order by eventid;
eventid | venueid | catid | dateid | eventname | starttime ---------+---------+-------+--------+--------------+--------------------- 4274 | 102 | 9 | 1965 | Lollapalooza | 2008-05-01 19:00:00 4684 | 114 | 9 | 2105 | Lollapalooza | 2008-10-06 14:00:00 5673 | 128 | 9 | 1973 | Lollapalooza | 2008-05-01 15:00:00 5740 | 51 | 9 | 1933 | Lollapalooza | 2008-04-17 15:00:00 5856 | 119 | 9 | 1831 | Lollapalooza | 2008-01-05 14:00:00 6040 | 126 | 9 | 2145 | Lollapalooza | 2008-11-15 15:00:00 7972 | 92 | 9 | 2026 | Lollapalooza | 2008-07-19 19:30:00 8046 | 65 | 9 | 1840 | Lollapalooza | 2008-01-14 15:00:00 8518 | 48 | 9 | 1904 | Lollapalooza | 2008-03-19 15:00:00 (9 rows)

然後,查詢 stl_delete 以查看刪除的執行步驟。在此範例中,查詢已傳回超過 300 個的資料列,因此以下輸出會縮短以便於顯示。

select query, slice, segment, step, tasknum, rows, tbl from stl_delete order by query;
query | slice | segment | step | tasknum | rows | tbl -------+-------+---------+------+---------+------+-------- 7 | 0 | 0 | 1 | 0 | 0 | 100000 7 | 1 | 0 | 1 | 0 | 0 | 100000 8 | 0 | 0 | 1 | 2 | 0 | 100001 8 | 1 | 0 | 1 | 2 | 0 | 100001 9 | 0 | 0 | 1 | 4 | 0 | 100002 9 | 1 | 0 | 1 | 4 | 0 | 100002 10 | 0 | 0 | 1 | 6 | 0 | 100003 10 | 1 | 0 | 1 | 6 | 0 | 100003 11 | 0 | 0 | 1 | 8 | 0 | 100253 11 | 1 | 0 | 1 | 8 | 0 | 100253 12 | 0 | 0 | 1 | 0 | 0 | 100255 12 | 1 | 0 | 1 | 0 | 0 | 100255 13 | 0 | 0 | 1 | 2 | 0 | 100257 13 | 1 | 0 | 1 | 2 | 0 | 100257 14 | 0 | 0 | 1 | 4 | 0 | 100259 14 | 1 | 0 | 1 | 4 | 0 | 100259 ...