[英]Error: relation [table name] does not exist
我想知道是否有任何特殊原因我不能從同一查詢中創建的臨時表中獲取 select。 我寫了一個簡單的 select 語句
CREATE TEMP TABLE items AS
(
SELECT item_no
FROM items_list
WHERE item_date < CURRENT_DATE
);
SELECT
it.item_no, it2.itemstatus
FROM
items it
LEFT JOIN
itmes_status it2 ON it2.item_no = it.item_no
我仍然總是收到錯誤
無效操作:關系[臨時表名]不存在;
我試圖刪除表,重命名它,在 from 和 join 語句中反轉表......但到目前為止似乎沒有任何效果。
你看到上面的查詢有什么問題嗎?
非常感謝!
這與 SQL 的處理方式有關。 執行查詢分為三個階段:
當您提交“批處理”時,所有解析和優化都發生在查詢運行之前。 唉,此時該表不存在。 該表僅在第一個表執行后才存在。
您可以簡單地將這兩個查詢作為兩個單獨的語句運行。
在SQL服務器及相關數據庫中,創建臨時表的語法為:
create table #<table name goes here> as
select . . .;
例如:
創建表 #items AS SELECT item_no FROM items_list WHERE item_date < CURRENT_DATE;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.