簡體   English   中英

此SQL TO_CHAR函數如何工作?

[英]How does this SQL TO_CHAR function work?

我正在學習SQL考試,並且在學習指南中將以下代碼視為正確答案;

UPDATE promotions
SET promo_cost = promo_cost + 100
WHERE TO_CHAR(promo_end_date, 'yyyy'>'2000';

此代碼如何工作? 我指的是TO_CHAR部分。 這也是缺少的括號:

WHERE TO_CHAR(promo_end_date, 'yyyy') > '2000';

謝謝 !

我不確定(如果輸入有誤,但您錯過了)

UPDATE promotions
SET promo_cost = promo_cost + 100
WHERE TO_CHAR(promo_end_date, 'yyyy') > '2000';

您提供的示例采用日期變量promo_end_date和日期格式'yyyy'並以提供的格式返回一個字符串,因此只包含日期的'yyyy'部分。 因此TO_CHAR(promo_end_date, 'yyyy')返回4位數字的年份,例如(2000、2001、1990等)

對於結束日期大於2000的所有促銷,update語句應將promo_cost增加100。希望這會有所幫助。

您可以在Oracle SQL中試用:

select TO_CHAR('01-JAN-99', 'mm/dd/yyyy') from dual; --should return the string '01/01/1999'
select TO_CHAR('20-APR-15', 'dd/mm') from dual; --should return '04/20'

您應該為此檢查Oracle文檔,它們的所有內置函數都有詳細的文檔記錄: http : //docs.oracle.com/cd/B19306_01/server.102/b14200/functions180.htm

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM