|——

应用中会有各种不同的需求,要灵活应对:比如拿到某一日期要知道是周几

|——DAYOFWEEK(date) 【返回日期date的星期索引(1=星期天,2=星期一, ……7=星期六)。这些索引值对应于ODBC标准。】

mysql> select DAYOFWEEK(CURRENT_TIMESTAMP());
+--------------------------------+
| DAYOFWEEK(CURRENT_TIMESTAMP()) |
+--------------------------------+
|                 3 |
+--------------------------------+
1 row in set

没错就是3 对应ODBC标准中找出对应 就是星期二;好坑。

写了一函数转换:

 
    private function _week($num)
{
$res = '';
switch ($num) {
case :
$res = '星期天';
break;
case :
$res = '星期一';
break;
case :
$res = '星期二';
break;
case :
$res = '星期三';
break;
case :
$res = '星期四';
break;
case :
$res = '星期五';
break;
case :
$res = '星期六';
break;
}
return $res;
}

|——WEEKDAY(date)【返回date的星期索引(0=星期一,1=星期二, ……6= 星期天)。】

mysql> select WEEKDAY(CURRENT_TIMESTAMP());
+------------------------------+
| WEEKDAY(CURRENT_TIMESTAMP()) |
+------------------------------+
|                 1|
+------------------------------+
1 row in set

怎么又是1了 好坑。

|——DAYOFMONTH(date) 【返回date的月份中日期,在1到31范围内。】

mysql> select DAYOFMONTH('2008-08-08');


+--------------------------+

| DAYOFMONTH('2008-08-08') |
+--------------------------+
|              8 |
+--------------------------+
1 row in set

 

|——DAYOFYEAR(date) 【返回date在一年中的日数, 在1到366范围内。】

 
mysql> select DAYOFYEAR('2008-08-08');
+-------------------------+
| DAYOFYEAR('2008-08-08') |
+-------------------------+
| 221                     |
+-------------------------+
1 row in set

 
 

|——MONTH(date)【返回date的月份,范围1到12。】

mysql> select MONTH('2008-08-08');
+---------------------+
| MONTH('2008-08-08') |
+---------------------+
| 8                   |
+---------------------+
1 row in set

|——DAYNAME(date)【返回date的星期名字。】

mysql> select DAYNAME("2008-08-08");
+-----------------------+
| DAYNAME("2008-08-08") |
+-----------------------+
| Friday                |
+-----------------------+
1 row in set

|——MONTHNAME(date)【返回date的月份名字。】

mysql> select MONTHNAME("2008-08-08");
+-------------------------+
| MONTHNAME("2008-08-08") |
+-------------------------+
| August                  |
+-------------------------+
1 row in set

|——QUARTER(date) 【返回date一年中的季度,范围1到4。】

 mysql> select QUARTER("2008-08-08");


+-----------------------+

| QUARTER("2008-08-08") |
+-----------------------+
| 3                     |
+-----------------------+
1 row in set

|——WEEK(date) | WEEK(date,first)

对于星期天是一周的第一天的地方,有一个单个参数,返回date的周数,范围在0到52。2个参数形式WEEK()允许
你指定星期是否开始于星期天或星期一。如果第二个参数是0,星期从星期天开始,如果第二个参数是1,

从星期一开始。

mysql> select week('2008-08-08',1);
+----------------------+
| week('2008-08-08',1) |
+----------------------+
| 32                   |
+----------------------+
1 row in set

mysql> select week('2008-08-08',0);
+----------------------+
| week('2008-08-08',0) |
+----------------------+
| 31                   |
+----------------------+
1 row in set

|——YEAR(date)【返回date的年份,范围在1000到9999。】

mysql> select year(now());
+-------------+
| year(now()) |
+-------------+
| 2014        |
+-------------+
1 row in set

|——CURRENT_DATE【以'YYYY-MM-DD'或YYYYMMDD格式返回今天日期值,取决于函数是在一个字符串还是数字上下文被使用。】

mysql> select curdate();
+------------+
| curdate()  |
+------------+
| 2014-04-15 |
+------------+
1 row in set 
 
mysql> select curdate() + 0;
+---------------+
| curdate() + 0 |
+---------------+
| 20140415      |
+---------------+
1 row in set

|——CURTIME()  | CURRENT_TIME 【以'HH:MM:SS'或HHMMSS格式返回当前时间值,取决于函数是在一个字符串还是在数字的上下文被使用。】

mysql> select curtime();
+-----------+
| curtime() |
+-----------+
| 15:11:00  |
+-----------+
1 row in set 
 
 
mysql> select current_time;
+--------------+
| current_time |
+--------------+
| 15:11:13     |
+--------------+
1 row in set

mysql> select current_time + 0;
+------------------+
| current_time + 0 |
+------------------+
| 151157.000000    |
+------------------+
1 row in set

|——  NOW()  == SYSDATE() == CURRENT_TIMESTAMP

mysql> select now();
+---------------------+
| now()               |
+---------------------+
| 2014-04-15 15:12:58 |
+---------------------+
1 row in set
 
 
 mysql> select now() + 0;
+-----------------------+
| now() + 0             |
+-----------------------+
| 20140415151306.000000 |
+-----------------------+
1 row in set

参考:

http://www.corange.cn/archives/2008/06/1275.html  Mysql 日期转换星期

Mysql的日期转换成星期[某天对应周几]的更多相关文章

  1. php日期转时间戳,指定日期转换成时间戳

    写过PHP+MySQL的程序员都知道有时间差,UNIX时间戳和格式化日期是我们常打交道的两个时间表示形式,Unix时间戳存储.处理方便,但 是不直观,格式化日期直观,但是处理起来不如Unix时间戳那么 ...

  2. excel转换日期格式,将yyyymmdd类型日期转换成yyyy-mm-dd等日期类型方法

    源数据日期格式:例如: 20160420 20160422 目标日期格式类型: 2016-4-20 2016-4-22 或 2016/04/20 2016/04/22 方法: 一.选中相应数据的单元格 ...

  3. mysql将字符转换成数字

    在操作mysql时,经常需要将字符转换成数字,这一步虽然简单,但不常用的话也很容易忘记,现将在网上找到的方法记录如下: 1.将字符的数字转成数字,比如'0'转成0可以直接用加法来实现例如:将pony表 ...

  4. mysql 查询 int类型日期转换成datetime类型

    数据库日期类型是int类型的,该查询结果是datetime类型的 SELECT from_unixtime( `时间列名` ) FROM 表名 如果原来类型是datetime类型,查询结果要是int类 ...

  5. mySQL把秒转换成日期

    mysql> SELECT SEC_TO_TIME (3600); +--------------------+ | SEC_TO_TIME (3600) | +---------------- ...

  6. C# 将日期转换成中文格式

    没有什么难点,只是要小心,要考虑到月.日上 10 的说法,比如:10 不能直接转换成一〇,也不能像上 20 那样转换成一十〇,应该是十. 特点总结: 数字为 10 时,结果为十: 数字大于 10 时, ...

  7. js 中日期 转换成时间戳 例如2013-08-30 转换为时间戳

    //时间格式2014-02-02 14:10:00改成时间戳 //此时构造出来的时间是:2013/03/08 00:00:00. //这样得到的是一个数值,表示的是从1970年1月1日0点0分0秒到d ...

  8. C#把日期转化成星期

    显示效果:       *****      前台页面代码: <TextBlock Grid.Row="/> <TextBlock Grid.Row="/> ...

  9. s 中日期 转换成时间戳 例如2013-08-30 转换为时间戳

    以前遇到过一个关于时间戳的问题,为了不被大家鄙视,先说一下概念. 具体时间戳怎么定义的我也不清楚,但百度百科中有这么一句:“时间戳是自 1970 年 1 月 1 日(00:00:00 GMT)至当前时 ...

随机推荐

  1. eclipse-maven安装配置java-web-servlet

    eclipse-maven安装配置java-web-servlet 系统说明: win7 64位 一. Maven安装 环境 要求 看Maven下载说明也行 jdk7.0以上 安装配置Maven 下载 ...

  2. 最佳虚拟容器LXC

    最佳虚拟容器LXC 和"真正的虚拟机环境"不同, "容器"(container)只能在Linux上虚拟Linux, 不能虚拟WIndows, 因为它不能虚拟硬件 ...

  3. [one day one question] 有没有免费接收短信验证用于注册的软件或者平台?

    问题描述: 想要批量注册撸羊毛,有手机短信验证码验证,这怎么破? 解决方案: 免费的肯定没有的,不过"一条短信收费一毛钱"倒是有一个,本人是亲自试用过,该平台收不到短信验证码不收费 ...

  4. selenium+java破解滑动验证码

    2019-04-16更新 修复极验页面改版,这次采用极验官方的demo地址:https://www.geetest.com/demo/slide-bind.html 截止2019-04-16,极验和腾 ...

  5. CSS 分页实例

    CSS 分页实例 一.简单分页 如果你的网站有很多个页面,你就需要使用分页来为每个页面做导航. 以下实例演示了如何使用 HTML 和 CSS 来创建分页: <!DOCTYPE html> ...

  6. g711u与g729比较编码格式

    •g711a—编解码格式为G.711 alaw •g711u—编解码格式为G.711 ulaw (the default) •g729—编解码格式为G.729 •g729a—编解码格式为G.729a ...

  7. Tomcat 发布项目 conf/Catalina/localhost 配置 及数据源配置

    本文介绍通过在tomcat的conf/Catalina/localhost目录下添加配置文件,来发布项目.因为这样对 tomcat 的入侵性最小,只需要新增一个配置文件,不需要修改原有配置:而且支持动 ...

  8. cuda8.0 出错:/usr/bin/ld: 找不到 -lGL【转】

    本文转自:https://blog.csdn.net/u010159842/article/details/56833030 最近在学习深度学习,在搭建CUDA8.0的时候,出现一个非常不好的问题: ...

  9. [参考]用递归的方法获取 字符 对应的 二进制字符串 (C/C++)

    将字符转换为16进制字符串.十进制字符串可以参考这里:https://www.cnblogs.com/stxs/p/8846545.html 代码及调试结果 举例:字符'a',查ASCII码表它对应的 ...

  10. NOI导刊2009 提高一

    zzh大佬给我说导刊的题全是普及难度,然而我..觉得有两道题是提高的 LocalMaxima 题目解析 对于\(i\)这个数,它要想成为LocalMaxima,比它大的要全部放到最后去,比它小的想怎么 ...