2016-03-07 16 views
0

我在我的數據庫中有一個表,它描述了不同主題的列表,包括類的時間。所以在我的PostgreSQL數據庫的欄目有:在SQL中使用臨時表來更新某個列並輸出結果

subject_id (type: serial) 
subject (type: character varying) 
class start times (type: time without time zone) 

當我寫我的查詢,列出所有我希望能夠修改類次爲一個特定主題的主題。我希望這種改變不是永久的,而是暫時的。我知道我需要在SQL中使用臨時表,但是如何選擇我的主題表中的所有內容,並臨時更改類時間以輸出給用戶。我需要首先製作一個臨時主題表,在我的查詢中使用它,然後運行UPDATE語句來更改特定類的時間,將其顯示給用戶,然後在完成表後刪除表。我明白需要做什麼,但我有點不確定在查詢中寫下這些內容。

+0

既然你不希望更改保存呢,你可以使用一個交易,更新值,選擇它並在最後回滾... – FirstOne

+0

任何好的例子來引用。不確定你使用交易的含義@FirstOne – bronxdeveloper

回答

0

如果你解釋了你試圖達到的目標,這個問題可能會更清楚。爲什麼不同用戶的開始時間會發生變化?

如果你修改開始時間,例如,出現在不同的時區,postgres本身就有這個能力。例如 SELECT subject, class_start_time::timestamptz AT TIME ZONE UTC FROM subjects as s ;

如果你想增加或減少一定的時間任意數量,你能做到這一點,以及: SELECT subject, class_start_time + interval '1 hour' FROM subjects as s ;

+0

由於講師遲到,某些上課時間可能會發生變化。所以如上所述,我需要創建一個變量並在SELECT語句中添加該變量@epic_fil – bronxdeveloper

+0

感謝您的示例。這有助於@epic_fil – bronxdeveloper

相關問題