转载自  MySQL dayname()函数

MySQL DAYNAME函数介绍

MySQL DAYNAME函数返回指定日期的工作日的名称。 以下说明了DAYNAME函数的语法:

DAYNAME(date);

DAYNAME函数接受1个参数,该参数是要获取其工作日名称的日期。

如果日期为NULL或无效,例如2017-02-30DAYNAME函数将返回NULL

MySQL DAYNAME函数示例

以下示例将返回2018年1月1日的工作日名称。

mysql> SELECT DAYNAME('2018-01-01') dayname;
+---------+
| dayname |
+---------+
| Monday  |
+---------+
1 row in set

默认情况下,MySQL返回由lc_time_names系统变量控制的语言中的工作日的名称,查询当前lc_time_names变量设置的值,如下 -

mysql> SELECT @@lc_time_names;
+-----------------+
| @@lc_time_names |
+-----------------+
| en_US           |
+-----------------+
1 row in set

您可以看到,目前区域设置设置为en_US

要在特定区域设置中获取日期名称一个工作日,您需要更改lc_time_names变量的值。 例如,以下语句将语言环境设置为中文:

mysql> SET @@lc_time_names = 'zh_CN';
Query OK, 0 rows affected

现在,我们来查询2018年1月1日的工作日名称:

mysql> SELECT DAYNAME('2018-01-01') dayname;
+---------+
| dayname |
+---------+
| 星期一  |
+---------+
1 row in set

您可以看到,工作日名称已更改为中文:星期一

下表显示了MySQL所支持的lc_time_names系统变量的有效语言环境的值:

国家 编/代码
Albanian – Albania sq_AL
Arabic – Algeria ar_DZ
Arabic – Bahrain ar_BH
Arabic – Egypt ar_EG
Arabic – India ar_IN
Arabic – Iraq ar_IQ
Arabic – Jordan ar_JO
Arabic – Kuwait ar_KW
Arabic – Lebanon ar_LB
Arabic – Libya ar_LY
Arabic – Morocco ar_MA
Arabic – Oman ar_OM
Arabic – Qatar ar_QA
Arabic – Saudi Arabia ar_SA
Arabic – Sudan ar_SD
Arabic – Syria ar_SY
Arabic – Tunisia ar_TN
Arabic – United Arab Emirates ar_AE
Arabic – Yemen ar_YE
Basque – Basque eu_ES
Belarusian – Belarus be_BY
Bulgarian – Bulgaria bg_BG
Catalan – Spain ca_ES
Chinese – China zh_CN
Chinese – Hong Kong zh_HK
Chinese – Taiwan Province of China zh_TW
Croatian – Croatia hr_HR
Czech – Czech Republic cs_CZ
Danish – Denmark da_DK
Dutch – Belgium nl_BE
Dutch – The Netherlands nl_NL
English – Australia en_AU
English – Canada en_CA
English – India en_IN
English – New Zealand en_NZ
English – Philippines en_PH
English – South Africa en_ZA
English – United Kingdom en_GB
English – United States en_US
English – Zimbabwe en_ZW
Estonian – Estonia et_EE
Faroese – Faroe Islands fo_FO
Finnish – Finland fi_FI
French – Belgium fr_BE
French – Canada fr_CA
French – France fr_FR
French – Luxembourg fr_LU
French – Switzerland fr_CH
Galician – Spain gl_ES
German – Austria de_AT
German – Belgium de_BE
German – Germany de_DE
German – Luxembourg de_LU
German – Switzerland de_CH
Greek – Greece el_GR
Gujarati – India gu_IN
Hebrew – Israel he_IL
Hindi – India hi_IN
Hungarian – Hungary hu_HU
Icelandic – Iceland is_IS
Indonesian – Indonesia id_ID
Italian – Italy it_IT
Italian – Switzerland it_CH
Japanese – Japan ja_JP
Korean – Republic of Korea ko_KR
Latvian – Latvia lv_LV
Lithuanian – Lithuania lt_LT
Macedonian – FYROM mk_MK
Malay – Malaysia ms_MY
Mongolia – Mongolian mn_MN
Norwegian – Norway no_NO
Norwegian(Bokmål) – Norway nb_NO
Polish – Poland pl_PL
Portugese – Brazil pt_BR
Portugese – Portugal pt_PT
Romanian – Romania ro_RO
Russian – Russia ru_RU
Russian – Ukraine ru_UA
Serbian – Yugoslavia sr_RS
Slovak – Slovakia sk_SK
Slovenian – Slovenia sl_SI
Spanish – Argentina es_AR
Spanish – Bolivia es_BO
Spanish – Chile es_CL
Spanish – Columbia es_CO
Spanish – Costa Rica es_CR
Spanish – Dominican Republic es_DO
Spanish – Ecuador es_EC
Spanish – El Salvador es_SV
Spanish – Guatemala es_GT
Spanish – Honduras es_HN
Spanish – Mexico es_MX
Spanish – Nicaragua es_NI
Spanish – Panama es_PA
Spanish – Paraguay es_PY
Spanish – Peru es_PE
Spanish – Puerto Rico es_PR
Spanish – Spain es_ES
Spanish – United States es_US
Spanish – Uruguay es_UY
Spanish – Venezuela es_VE
Swedish – Finland sv_FI
Swedish – Sweden sv_SE
Tamil – India ta_IN
Telugu – India te_IN
Thai – Thailand th_TH
Turkish – Turkey tr_TR
Ukrainian – Ukraine uk_UA
Urdu – Pakistan ur_PK
Vietnamese – Viet Nam vi_VN

请参阅示例数据库(yiibaid)中的以下orders表:

mysql> desc orders;
+----------------+-------------+------+-----+---------+-------+
| Field          | Type        | Null | Key | Default | Extra |
+----------------+-------------+------+-----+---------+-------+
| orderNumber    | int(11)     | NO   | PRI | NULL    |       |
| orderDate      | date        | NO   |     | NULL    |       |
| requiredDate   | date        | NO   |     | NULL    |       |
| shippedDate    | date        | YES  |     | NULL    |       |
| status         | varchar(15) | NO   |     | NULL    |       |
| comments       | text        | YES  |     | NULL    |       |
| customerNumber | int(11)     | NO   | MUL | NULL    |       |
+----------------+-------------+------+-----+---------+-------+
7 rows in set

以下语句返回2014年按工作日名称分组的订单计数。

SELECT DAYNAME(orderdate) weekday, COUNT(*) total_orders
FROMorders
WHEREYEAR(orderdate) = 2004
GROUP BY weekday
ORDER BY total_orders DESC;

执行上面查询语句,得到以下结果 -

+---------+--------------+
| weekday | total_orders |
+---------+--------------+
| 星期三  |           37 |
| 星期一  |           28 |
| 星期日  |           27 |
| 星期二  |           22 |
| 星期六  |           21 |
| 星期四  |           14 |
| 星期五  |            2 |
+---------+--------------+
7 rows in set

星期三的订单数量是最高的,星期五有两个订单。

在本教程中,您已经学习了如何使用MySQL DAYNAME函数获取特定日期的工作日名称。

MySQL dayname()函数相关推荐

  1. MySQL - DAYNAME DAYOFWEEK 函数

    DAYOFWEEK函数返回日期的工作日索引值,即星期日为1,星期一为2,星期六为7. 这些索引值对应于ODBC标准. 下面说明了DAYOFWEEK函数的语法 DAYOFWEEK函数接受1个参数,即DA ...

  2. Mysql日期函数使用大全

    为什么80%的码农都做不了架构师?>>>    1.1 获得当前日期+时间(date + time)函数:now() 除了 now() 函数能获得当前的日期时间外,MySQL 中还有 ...

  3. MySQL weekday()函数

    转载自  MySQL weekday()函数 WEEKDAY函数返回一个日期的工作日索引值,即星期一为0,星期二为1,星期日为6. 以下说明了WEEKDAY函数的语法: WEEKDAY(date) W ...

  4. MySQL dayofweek()函数

    转载自  MySQL dayofweek()函数 DAYOFWEEK函数返回日期的工作日索引值,即星期日为1,星期一为2,星期六为7. 这些索引值对应于ODBC标准. 下面说明了DAYOFWEEK函数 ...

  5. 建立学生选课表 mysql 语句_学生选课数据库SQL语句45道练习题整理及mysql常用函数(20161019)...

    学生选课数据库SQL语句45道练习题: 一.            设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四 ...

  6. mysql常用函数参考

    mysql常用函数参考 对于针对字符串位置的操作,第一个位置被标记为1. ASCII(str) 返回字符串str的最左面字符的ASCII代码值.如果str是空字符串,返回0.如果str是NULL,返回 ...

  7. mysql ceil,MySQL常用函数介绍

    前言: MySQL数据库中提供了很丰富的函数,比如我们常用的聚合函数,日期及字符串处理函数等.SELECT语句及其条件表达式都可以使用这些函数,函数可以帮助用户更加方便的处理表中的数据,使MySQL数 ...

  8. mysql时间相减得到天数保留两位_[转]Mysql日期函数-日期相减返回天数

    MySQL datediff(date1,date2):两个日期相减 date1 - date2,返回天数. select datediff('2008-08-08', '2008-08-01'); ...

  9. MySql常用函数及命令

    1 添加mysql\bin 到path 2 启动cmd 登陆 :mysql -hlocalhost -uroot -pxxxx 3退出 exit 在mysql>提示符下命令   show dat ...

最新文章

  1. 解决导入.vdi文件时报“uuid is exists”错误
  2. failed to get the task for process XXX(解决方案)
  3. 由一个问题引发的思考
  4. oracle 9i闪回schema,Oracle 9i闪回查询的新特性
  5. 【报告分享】2021年BrandGrow中国新锐品牌增长潜力报告.pdf(附下载链接)
  6. IDEA 忽略CSS错误
  7. [转]动软代码生成器之模板功能介绍
  8. c++如何生成一个不能被继承的类
  9. 串口通讯 电脑和dsp_高速DSP与PC实现串口通信的方法
  10. 洛谷P1894 [USACO4.2]完美的牛栏The Perfect Stall
  11. RabbitMQ None of the specified endpoints were reachable 错误 解决方案
  12. 队列-链表-C语言实现
  13. Linux操作系统学习02
  14. c语言用星号输出大写字母H,如何在C语言中用星号或自定义字符打印方形图案
  15. 多媒体个人计算机能处理什么,多媒体信息处理
  16. 线性表示线性相关线性无关
  17. sql server使用教程(图文)
  18. Flink状态一致性检查点
  19. 面试题之你是如何优化你的网站的?
  20. 客户虐我千百遍,我待客户如初恋

热门文章

  1. ios realm 文件_iOS开发中使用Realm数据库
  2. MySQL分布式ID_分布式唯一ID系列(3)——数据库自增ID机制适合做分布式ID吗
  3. 16位并行加载寄存器设计
  4. [Java基础]函数式接口
  5. [Java基础]Collections概述和使用
  6. [剑指offer]面试题7:用两个栈实现队列
  7. 计算机蠕虫是一个程序或程序系列,它采取截取口令并试图在系统中,计算机蠕虫病毒是一个程序或程序系列,它采取截取口令并试图在系统中做非法动作的方式直接攻击计算机。...
  8. python实现辗转相除法求最大公约数和最小公倍数
  9. 随机梯度下降的实现细节
  10. P2012 拯救世界2(指数型生成函数)