我想從Teradata中的表中刪除前n行或後n行。但是我沒有得到任何正確的查詢。任何人都可以告訴我我該怎麼做?Teradata:從表中刪除n行
0
A
回答
0
我沒有與Teradata的合作的經驗,但如果我用SQL工作,我將使它像:
Delete From |TableName| where |the ID column Name|
IN (Select top(n) |the ID column Name| from |TableName|)
因此,舉例來說,如果我有一個客戶表,該表包含客戶ID爲主鍵列客戶名稱,我想刪除第10行我想是這樣的:
Delete From Customer where CustomerID
IN (Select top(10) CustomerID from Customer)
我希望它能夠幫助
+0
如果在CustomerID上沒有ORDER BY,TOP將返回來自首先完成的AMP的行。這意味着每次查詢執行時都會產生一個隨機結果。如果在生產環境中盲目運行,這可能會產生不良後果。 –
+0
上述查詢無法正常工作,並顯示錯誤:子查詢中不支持Top N –
0
前N蘇bselect在刪除中受到限制,而在其他情況下不受限制。
因此,創建一種揮發性表而不是子查詢
create volatile table myDel as (
select id from myTable
sample .25
) with data on commit preserve rows;
delete T
from myTable T, myDel D
where T.id = D.id;
會刪除數據(順便說一句,樣品有很多的選擇如何構建樣本)
揮發性表和頂部的25% n,以及一些順序標準,您可以清楚地定義頂部/末尾是什麼。
create volatile table myDel as (
select top 3 id from myTable order by col_1
) with data on commit preserve rows;
相關問題
- 1. 從teradata coloumn中刪除特殊字符
- 2. 刪除/刪除Teradata中的數據庫
- 3. 刪除 - TERADATA GROUP BY
- 4. 從html中刪除`= \ n`
- 5. 從myFile中刪除\ n
- 6. 刪除從第N行到第N行vim的行
- 7. codeigniter從表中刪除行
- 8. 從表中刪除多行
- 9. 從每個起點刪除N行
- 10. 刪除 '\ n \ n。' C++
- 11. bash-刪除\ n每三行
- 12. \ n(新行)刪除的Android
- 13. 刪除第n行mysql
- 14. 如何從表中刪除行而不從參考表中刪除一行?
- 15. 如果從主表中刪除行,則從其他表中刪除行
- 16. 如何從iphone中的字符串中刪除刪除/ n/t
- 17. 從python列表中刪除'\ n'列表項
- 18. 從字符串中刪除「\ n \」
- 19. Mysql,每行刪除幾行N行
- 20. 刪除數字列表中的「\ n」
- 21. 從視圖刪除行從基表刪除行 - MYsql?
- 22. 刪除行SQL從表
- 23. 刪除錶行,從總和
- 24. 從Prolog中的列表中刪除前N個元素
- 25. 從表中刪除?
- 26. 從另一個表中刪除特定行時刪除表中的行
- 27. 刪除\ r \ n \ r \ n
- 28. 刪除\ r \ n \ r \ n
- 29. 從Teradata的日期字段中刪除時間
- 30. Teradata bteq sql刪除表中的最小(列)重複記錄
定義*前n行*。在表中沒有* first *或* last *行,它是一組無序的行:-) – dnoeth
我的意思是說從開頭或最後一行開始的任何行。 –
你如何定義*開始或最後*? – dnoeth