sql表
在上面的表中,名為 carpooling 的列名稱包含一個列名 start_on,它的日期時間為時間戳,我必須撰寫一個查詢以使用 to_char 和 to_date 選擇日期為 25-11-20 的所有行。
uj5u.com熱心網友回復:
您可以像這樣撰寫時間戳文字:
timestamp '2020-11-25 00:00:00'
所以完整的過濾條件將是
where start_on >= timestamp '2020-11-25 00:00:00'
and start_on < timestamp '2020-11-26 00:00:00'
請注意,Oracle 中的日期和時間戳是不同的,并且日期包括精確到秒的時間(這是出于歷史原因 - 最初只有date型別,并且timestamp是在很久以后添加的)。
uj5u.com熱心網友回復:
您可以簡單地使用 to_date,但建議在比較日期時洗掉時間。否則,將不會選擇日期相同但時間不同的行。可以使用 TRUNC 洗掉時間。所以你可以做這樣的事情:
SELECT * FROM carpooling
WHERE TRUNC(start_on) = TO_DATE('2020-11-25','yyyy.mm.dd');
如果您不想查看 2020 年 11 月 25 日,而是想查看其他資料,請更改日期以匹配您的目標。
uj5u.com熱心網友回復:
使用 TRUNC 函式以及日期和間隔文字:
SELECT *
FROM CARPOOLING
WHERE START_ON BETWEEN DATE '2020-11-25'
AND (DATE '2020-11-26' - INTERVAL '0.000001' SECOND)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/463080.html
上一篇:在SQL查詢中從計算列中選擇新列
