use*_*901 61 oracle date dayofweek
鉴于03/09/1982
我们怎么能说这是哪个工作日.在这种情况下它将是Tue
.
是否可以获得单个查询?
Zoh*_*aib 117
SQL> SELECT TO_CHAR(date '1982-03-09', 'DAY') day FROM dual;
DAY
---------
TUESDAY
SQL> SELECT TO_CHAR(date '1982-03-09', 'DY') day FROM dual;
DAY
---
TUE
SQL> SELECT TO_CHAR(date '1982-03-09', 'Dy') day FROM dual;
DAY
---
Tue
Run Code Online (Sandbox Code Playgroud)
(请注意,查询使用ANSI日期文字,遵循ISO-8601日期标准,避免日期格式模糊.)
晚了将近十年,但我认为有必要增强@Zohaib 的答案,因为它的结果取决于客户的语言。如果您向用户显示星期几名称,那绝对没问题,但如果您的代码依赖于它,我宁愿像这样控制语言:
SQL> SELECT TO_CHAR(date '1982-03-09', 'DAY', 'NLS_DATE_LANGUAGE = ENGLISH') day FROM dual;
DAY
---------
TUESDAY
SQL> SELECT TO_CHAR(date '1982-03-09', 'DY', 'NLS_DATE_LANGUAGE = ENGLISH') day FROM dual;
DAY
---
TUE
SQL> SELECT TO_CHAR(date '1982-03-09', 'Dy', 'NLS_DATE_LANGUAGE = ENGLISH') day FROM dual;
DAY
---
Tue
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
264182 次 |
最近记录: |