Documentation Home
MySQL 8.3 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 40.8Mb
PDF (A4) - 40.9Mb
Man Pages (TGZ) - 294.0Kb
Man Pages (Zip) - 409.0Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb
Excerpts from this Manual

MySQL 8.3 Reference Manual  /  Character Sets, Collations, Unicode  /  MySQL Server Locale Support

12.16 MySQL 服务器Locale支持

lc_time_names 系统变量指示的locale控制着显示日期和月份名称和缩写的语言。此变量影响 DATE_FORMAT()DAYNAME()MONTHNAME() 函数的输出。

lc_time_names 不影响 STR_TO_DATE()GET_FORMAT() 函数。

lc_time_names 值不影响 FORMAT() 函数的结果,但该函数接受一个可选的第三个参数,以指定要用于结果数字的小数点、千位分隔符和分组分隔符的locale。允许的locale值与 lc_time_names 系统变量的合法值相同。

Locale 名称具有语言和区域子标签,列举在 IANA (http://www.iana.org/assignments/language-subtag-registry),例如 'ja_JP''pt_BR'。默认值是 'en_US',无论系统的locale设置如何,但您可以在服务器启动时设置该值,或者在运行时设置全局值,如果您有足够的权限设置全局系统变量;见 第 7.1.9.1 节,“系统变量权限”。任何客户端都可以检查 lc_time_names 的值或设置其会话值,以影响自己的连接的locale。

mysql> SET NAMES 'utf8mb4';
Query OK, 0 rows affected (0.09 sec)

mysql> SELECT @@lc_time_names;
+-----------------+
| @@lc_time_names |
+-----------------+
| en_US           |
+-----------------+
1 row in set (0.00 sec)

mysql> SELECT DAYNAME('2020-01-01'), MONTHNAME('2020-01-01');
+-----------------------+-------------------------+
| DAYNAME('2020-01-01') | MONTHNAME('2020-01-01') |
+-----------------------+-------------------------+
| Wednesday             | January                 |
+-----------------------+-------------------------+
1 row in set (0.00 sec)

mysql> SELECT DATE_FORMAT('2020-01-01','%W %a %M %b');
+-----------------------------------------+
| DATE_FORMAT('2020-01-01','%W %a %M %b') |
+-----------------------------------------+
| Wednesday Wed January Jan               |
+-----------------------------------------+
1 row in set (0.00 sec)

mysql> SET lc_time_names = 'es_MX';
Query OK, 0 rows affected (0.00 sec)

mysql> SELECT @@lc_time_names;
+-----------------+
| @@lc_time_names |
+-----------------+
| es_MX           |
+-----------------+
1 row in set (0.00 sec)

mysql> SELECT DAYNAME('2020-01-01'), MONTHNAME('2020-01-01');
+-----------------------+-------------------------+
| DAYNAME('2020-01-01') | MONTHNAME('2020-01-01') |
+-----------------------+-------------------------+
| miércoles             | enero                   |
+-----------------------+-------------------------+
1 row in set (0.00 sec)

mysql> SELECT DATE_FORMAT('2020-01-01','%W %a %M %b');
+-----------------------------------------+
| DATE_FORMAT('2020-01-01','%W %a %M %b') |
+-----------------------------------------+
| miércoles mié enero ene                 |
+-----------------------------------------+
1 row in set (0.00 sec)

每个受影响函数的日或月名称都从 utf8mb4 转换为由 character_set_connection 系统变量指示的字符集。

lc_time_names 可以设置为以下locale值。MySQL 支持的locale集可能与操作系统支持的locale集不同。

Locale Value Meaning
ar_AE 阿拉伯语 - 阿拉伯联合酋长国
ar_BH 阿拉伯语 - 巴林
ar_DZ 阿拉伯语 - 阿尔及利亚
ar_EG 阿拉伯语 - 埃及
ar_IN 阿拉伯语 - 印度
ar_IQ 阿拉伯语 - 伊拉克
ar_JO 阿拉伯语 - 约旦
ar_KW 阿拉伯语 - 科威特
ar_LB 阿拉伯语 - 黎巴嫩
ar_LY 阿拉伯语 - 利比亚
ar_MA 阿拉伯语 - 摩洛哥
ar_OM 阿拉伯语 - 阿曼
ar_QA 阿拉伯语 - 卡塔尔
ar_SA 阿拉伯语 - 沙特阿拉伯
ar_SD 阿拉伯语 - 苏丹
ar_SY 阿拉伯语 - 叙利亚
ar_TN 阿拉伯语 - 突尼斯
ar_YE 阿拉伯语 - 也门
be_BY 白俄罗斯语 - 白俄罗斯
bg_BG 保加利亚语 - 保加利亚
ca_ES 加泰罗尼亚语 - 西班牙
cs_CZ 捷克语 - 捷克共和国
da_DK 丹麦语 - 丹麦
de_AT 德语 - 奥地利
de_BE 德语 - 比利时
de_CH 德语 - 瑞士
de_DE 德语 - 德国
de_LU 德语 - 卢森堡
el_GR 希腊语 - 希腊
en_AU 英语 - 澳大利亚
en_CA 英语 - 加拿大
en_GB 英语 - 英国
en_IN 英语 - 印度
en_NZ 英语 - 新西兰
en_PH 英语 - 菲律宾
en_US 英语 - 美国
en_ZA 英语 - 南非
en_ZW 英语 - 津巴布韦
es_AR 西班牙语 - 阿根廷
es_BO 西班牙语 - 玻利维亚
es_CL 西班牙语 - 智利
es_CO 西班牙语 - 哥伦比亚
es_CR 西班牙语 - 哥斯达黎加
es_DO 西班牙语 - 多米尼加共和国
es_EC 西班牙语 - 厄瓜多尔
es_ES 西班牙语 - 西班牙
es_GT 西班牙语 - 危地马拉
es_HN 西班牙语 - 洪都拉斯
es_MX 西班牙语 - 墨西哥
es_NI 西班牙语 - 尼加拉瓜
es_PA 西班牙语 - 巴拿马
es_PE 西班牙语 - 秘鲁
es_PR 西班牙语 - 波多黎各
es_PY 西班牙语 - 巴拉圭
es_SV 西班牙语 - 萨尔瓦多
es_US 西班牙语 - 美国
es_UY 西班牙语 - 乌拉圭
es_VE 西班牙语 - 委内瑞拉
et_EE 爱沙尼亚语 - 爱沙尼亚
eu_ES 巴斯克语 - 西班牙
fi_FI 芬兰语 - 芬兰
fo_FO 法罗语 - 法罗群岛
fr_BE 法语 - 比利时
fr_CA 法语 - 加拿大
fr_CH 法语 - 瑞士
fr_FR 法语 - 法国
fr_LU 法语 - 卢森堡
gl_ES 加利西亚语 - 西班牙
gu_IN 古吉拉特语 - 印度
he_IL 希伯来语 - 以色列
hi_IN 印地语 - 印度
hr_HR 克罗地亚语 - 克罗地亚
hu_HU 匈牙利语 - 匈牙利
id_ID 印尼语 - 印尼
is_IS 冰岛语 - 冰岛
it_CH 意大利语 - 瑞士
it_IT 意大利语 - 意大利
ja_JP 日语 - 日本
ko_KR 韩语 - 韩国
lt_LT 立陶宛语 - 立陶宛
lv_LV 拉脱维亚语 - 拉脱维亚
mk_MK 马其顿语 - 北马其顿
mn_MN 蒙古语 - 蒙古
ms_MY 马来语 - 马来西亚
nb_NO 挪威语(博克马尔)- 挪威
nl_BE 荷兰语 - 比利时
nl_NL 荷兰语 - 荷兰
no_NO 挪威语 - 挪威
pl_PL 波兰语 - 波兰
pt_BR 葡萄牙语 - 巴西
pt_PT 葡萄牙语 - 葡萄牙
rm_CH 罗曼什语 - 瑞士
ro_RO 罗马尼亚语 - 罗马尼亚
ru_RU 俄语 - 俄罗斯
ru_UA 俄语 - 乌克兰
sk_SK 斯洛伐克语 - 斯洛伐克
sl_SI 斯洛文尼亚语 - 斯洛文尼亚
sq_AL 阿尔巴尼亚语 - 阿尔巴尼亚
sr_RS 塞尔维亚语 - 塞尔维亚
sv_FI 瑞典语 - 芬兰
sv_SE 瑞典语 - 瑞典
ta_IN 泰米尔语 - 印度
te_IN 泰卢固语 - 印度
th_TH 泰语 - 泰国
tr_TR 土耳其语 - 土耳其
uk_UA 乌克兰语 - 乌克兰
ur_PK 乌尔都语 - 巴基斯坦
vi_VN 越南语 - 越南
zh_CN 中文 - 中国
zh_HK 中文 - 香港
zh_TW 中文 - 台湾