- 浏览: 624133 次
文章分类
最新评论
-
luozhixiong:
oracle的常用函数 instr() 和substr()函数 -
yezuhui2008:
oracle的常用函数 instr() 和substr()函数 -
陶小宝:
oracle的常用函数 instr() 和substr()函数 -
曾老师:
绿屌侠 写道[flash=200,200][flash=200 ...
mysql 的 find_in_set函数使用方法 -
绿屌侠:
[flash=200,200][flash=200,200][ ...
mysql 的 find_in_set函数使用方法
mysql的日期/时间函数
一、 Mysql 获得当前日期时间
Now() : 获得当前的 日期+ 时间(date + time )函数:
mysql> select now();
+---------------------+
| now() |
+---------------------+
| 2011-03-01 10:26:23 |
+---------------------+
1 row in set (0.00 sec)
同等的函数还包括current_timestamp(),localtime() ,但是now() 最容易记忆,所以推荐使用。
Sysdate() : 日期时间函数跟 now() 类似,不同之处在于:now() 在执行开始时值就得到了, sysdate() 在函数执行时动态得到值。
看下面的例子就明白了:
mysql> select now(),sleep(3),now();
+---------------------+----------+---------------------+
| now() | sleep(3) | now() |
+---------------------+----------+---------------------+
| 2011-03-01 10:51:43 | 0 | 2011-03-01 10:51:43 |
+---------------------+----------+---------------------+
1 row in set (3.02 sec)
mysql> select sysdate(),sleep(3),sysdate();
+---------------------+----------+---------------------+
| sysdate() | sleep(3) | sysdate() |
+---------------------+----------+---------------------+
| 2011-03-01 10:52:09 | 0 | 2011-03-01 10:52:12 |
+---------------------+----------+---------------------+
1 row in set (3.00 sec)
可以看到,虽然中途 sleep 3 秒,但 now() 函数两次的时间值是相同的; sysdate() 函数两次得到的时间值相差 3 秒
也可以只取当前日期或者当前时间
Curdate(): 获得当前日期
mysql> select curdate();
+------------+
| curdate() |
+------------+
| 2011-03-01 |
+------------+
1 row in set (0.01 sec)
Curtime() : 获得当前时间(time )函数
mysql> select curtime();
+-----------+
| curtime() |
+-----------+
| 10:55:12 |
+-----------+
1 row in set (0.00 sec)
二、 Mysql 日期时间的抽取extract
通过这一功能,我们可以从一个时间中抽取自己想要的部分,例如
mysql> set @ct='2011-03-01 11:16:14.123456';
Query OK, 0 rows affected (0.01 sec)
设置变量ct 为某一时间值,精确到微妙
获取其日期值
mysql> select date(@ct);
+------------+
| date(@ct) |
+------------+
| 2011-03-01 |
+------------+
1 row in set (0.00 sec)
查看此日期所属季度
mysql> select quarter(@ct);
+--------------+
| quarter(@ct) |
+--------------+
| 1 |
+--------------+
1 row in set (0.00 sec)
查看此日期属于当年哪一周
mysql> select week(@ct);
+-----------+
| week(@ct) |
+-----------+
| 9 |
+-----------+
1 row in set (0.00 sec)
另外还有year(),day(),hour(),minute(),second() 等,在此不一一赘述。
采用extract() ,也可以实现类似的功能,语法格式为extract(year from @ct) ,
不足之处在于需要多敲几次键盘
Dayof 函数 :
Dayofweek(),dayofmonth(),dayofyear() 分别返回日期再一周、一月以及一年中的位置
mysql> select dayofweek(@ct);
+----------------+
| dayofweek(@ct) |
+----------------+
| 3 |
+----------------+
1 row in set (0.00 sec)
注意:其实3 月1 号是星期二,但是返回数字3 ,因为是从Sunday 开始算起的(1=Sunday,2=Monday, …)
mysql> select dayofmonth(@ct);
+-----------------+
| dayofmonth(@ct) |
+-----------------+
| 1 |
+-----------------+
1 row in set (0.00 sec)
mysql> select dayofyear(@ct);
+----------------+
| dayofyear(@ct) |
+----------------+
| 60 |
+----------------+
1 row in set (0.00 sec)
Week() 函数
查看日期属于当年的第几周
mysql> select weekofyear(@ct);
+-----------------+
| weekofyear(@ct) |
+-----------------+
| 9 |
+-----------------+
1 row in set (0.00 sec)
返回星期名和月份名的函数
Dayname() —计算日期是星期几
mysql> select dayname(@ct);
+--------------+
| dayname(@ct) |
+--------------+
| Tuesday |
+--------------+
1 row in set (0.02 sec)
Monthname() —计算日期是哪一月
mysql> select monthname(@ct);
+----------------+
| monthname(@ct) |
+----------------+
| March |
+----------------+
1 row in set (0.00 sec)
Last_day() : 返回月份中最后一天
mysql> select now();
+---------------------+
| now() |
+---------------------+
| 2011-03-01 13:15:00 |
+---------------------+
1 row in set (0.00 sec)
mysql> select last_day(now());
+-----------------+
| last_day(now()) |
+-----------------+
| 2011-03-31 |
+-----------------+
1 row in set (0.00 sec)
通过该函数,可以计算出当前月份有多少天
mysql> select now(),day(last_day(now())) ;
+---------------------+----------------------+
| now() | day(last_day(now())) |
+---------------------+----------------------+
| 2011-03-01 13:17:12 | 31 |
+---------------------+----------------------+
1 row in set (0.00 sec)
三、Mysql 的日期时间计算函数
Date_add() : 为日期增加一个时间间隔
具体语法为date_add(@ct, interval num year/quarter/month/week/day/hour/minute/secont/microsecond);
注意: 此函数并不改变变量@ct 的实际值
mysql> set @ct=now();
Query OK, 0 rows affected (0.00 sec)
mysql> select @ct;
+---------------------+
| @ct |
+---------------------+
| 2011-03-01 15:09:16 |
+---------------------+
1 row in set (0.00 sec)
mysql> select date_add(@ct,interval 1 day);
+------------------------------+
| date_add(@ct,interval 1 day) |
+------------------------------+
| 2011-03-02 15:09:16 |
+------------------------------+
1 row in set (0.00 sec)
mysql> select @ct;
+---------------------+
| @ct |
+---------------------+
| 2011-03-01 15:09:16 |
+---------------------+
1 row in set (0.00 sec)
mysql> select date_add(@ct,interval 1 week);
+-------------------------------+
| date_add(@ct,interval 1 week) |
+-------------------------------+
| 2011-03-08 15:09:16 |
+-------------------------------+
1 row in set (0.00 sec)
类似功能还有adddate(),addtime() 等函数,与之相对应的是date_sub() ,顾名思义就是日期减法
另类日期函数
Period_add(P,N): 日期加/ 减去N 月,其中P 的格式应为yyyymm 或yymm
Period_diff(P1,P2): 日期p1-p2 ,返回N 个月
mysql> select period_add(201103,2),period_add(201103,-2) ;
+----------------------+-----------------------+
| period_add(201103,2) | period_add(201103,-2) |
+----------------------+-----------------------+
| 201105 | 201101 |
+----------------------+-----------------------+
1 row in set (0.00 sec)
mysql> select period_diff('201103','201101');
+--------------------------------+
| period_diff('201103','201101') |
+--------------------------------+
| 2 |
+--------------------------------+
1 row in set (0.00 sec)
日期时间相减函数
Datediff(date1,date2) : 两个日期date1-date2
mysql> select datediff('2011-03-09','2011-03-01');
+-------------------------------------+
| datediff('2011-03-09','2011-03-01') |
+-------------------------------------+
| 8 |
+-------------------------------------+
1 row in set (0.00 sec)
mysql> select datediff('2011-03-01','2011-03-09');
+-------------------------------------+
| datediff('2011-03-01','2011-03-09') |
+-------------------------------------+
| -8 |
+-------------------------------------+
1 row in set (0.00 sec)
Timediff(time1,time2) : 两个时间相减
mysql> select timediff('2011-03-03 15:33:00','2011-03-02 15:33:59');
+-------------------------------------------------------+
| timediff('2011-03-03 15:33:00','2011-03-02 15:33:59') |
+-------------------------------------------------------+
| 23:59:01 |
+-------------------------------------------------------+
1 row in set (0.00 sec)
mysql> select timediff('15:33:00','15:33:59');
+---------------------------------+
| timediff('15:33:00','15:33:59') |
+---------------------------------+
| -00:00:59 |
+---------------------------------+
1 row in set (0.00 sec)
四 mysql 日期、时间转换函数
Time_to_sec(time) : 时间—> 秒 转换函数
Sec_to_time(num) : 秒--> 时间 转换函数
mysql> select time_to_sec('01:00:00');
+-------------------------+
| time_to_sec('01:00:00') |
+-------------------------+
| 3600 |
+-------------------------+
1 row in set (0.00 sec)
mysql> select sec_to_time(3600);
+-------------------+
| sec_to_time(3600) |
+-------------------+
| 01:00:00 |
+-------------------+
1 row in set (0.00 sec)
To_days(date) : 日期--> 天 转换函数 起始日期为0000-00-00
From_days(num) : 天--> 日期 将数字转换为具体的日期
mysql> select to_days('2011-03-01');
+-----------------------+
| to_days('2011-03-01') |
+-----------------------+
| 734562 |
+-----------------------+
1 row in set (0.00 sec)
mysql> select from_days(734562);
+-------------------+
| from_days(734562) |
+-------------------+
| 2011-03-01 |
+-------------------+
1 row in set (0.00 sec)
Str_to_date(str,date) : 字符串--> 日期 转换函数
可以将一些杂乱无章的字符转换为日期格式
mysql> select str_to_date('01.03.2011', '%m.%d.%Y');
+---------------------------------------+
| str_to_date('01.03.2011', '%m.%d.%Y') |
+---------------------------------------+
| 2011-01-03 |
+---------------------------------------+
1 row in set (0.00 sec)
mysql> select str_to_date('01/03/2011', '%m/%d/%Y');
+---------------------------------------+
| str_to_date('01/03/2011', '%m/%d/%Y') |
+---------------------------------------+
| 2011-01-03 |
+---------------------------------------+
1 row in set (0.00 sec)
小练习:
以表centralmobile_logs 为例,目前该表总共有270 多万条数据
mysql> select count(*) from centralmobile_logs;
+----------+
| count(*) |
+----------+
| 2725403 |
+----------+
1 row in set (0.00 sec)
现在对其做一些统计
查询过去30 天总共有多少数据
mysql> select count(*) from centralmobile_logs where to_days(curdate())- to_days(create_time)<=30;
+----------+
| count(*) |
+----------+
| 2367518 |
+----------+
1 row in set (3.38 sec)
mysql> select count(*) from centralmobile_logs where datediff(curdate(),create_time) <=30;
+----------+
| count(*) |
+----------+
| 2367518 |
+----------+
1 row in set (3.29 sec)
查看每月第一天的数据
mysql> select count(*) from centralmobile_logs where dayofmonth(create_time)=1;
+----------+
| count(*) |
+----------+
| 161293 |
+----------+
1 row in set (3.14 sec)
查看11 年1 月31 日之前的数据
mysql> select count(*) from centralmobile_logs where create_time <='2011-01-31 00:00:00';
+----------+
| count(*) |
+----------+
| 413797 |
+----------+
1 row in set (0.17 sec)
查看11 年整个二月份的数据
mysql> select count(*) from centralmobile_logs where monthname(create_time)='February' and year(create_time)=2011;
+----------+
| count(*) |
+----------+
| 2149284 |
+----------+
1 row in set (3.94 sec)
查看11 年每个周日的累积数据
mysql> select count(*) from centralmobile_logs where dayname(create_time)='Sunday' and year(create_time)=2011;
+----------+
| count(*) |
+----------+
| 479033 |
+----------+
1 row in set (3.88 sec)
查看每天零点时分插入的数据总和
mysql> select count(*) from centralmobile_logs where time(create_time)='00:00:00';
+----------+
| count(*) |
+----------+
| 37 |
+----------+
1 row in set (3.99 sec)
一、 Mysql 获得当前日期时间
Now() : 获得当前的 日期+ 时间(date + time )函数:
mysql> select now();
+---------------------+
| now() |
+---------------------+
| 2011-03-01 10:26:23 |
+---------------------+
1 row in set (0.00 sec)
同等的函数还包括current_timestamp(),localtime() ,但是now() 最容易记忆,所以推荐使用。
Sysdate() : 日期时间函数跟 now() 类似,不同之处在于:now() 在执行开始时值就得到了, sysdate() 在函数执行时动态得到值。
看下面的例子就明白了:
mysql> select now(),sleep(3),now();
+---------------------+----------+---------------------+
| now() | sleep(3) | now() |
+---------------------+----------+---------------------+
| 2011-03-01 10:51:43 | 0 | 2011-03-01 10:51:43 |
+---------------------+----------+---------------------+
1 row in set (3.02 sec)
mysql> select sysdate(),sleep(3),sysdate();
+---------------------+----------+---------------------+
| sysdate() | sleep(3) | sysdate() |
+---------------------+----------+---------------------+
| 2011-03-01 10:52:09 | 0 | 2011-03-01 10:52:12 |
+---------------------+----------+---------------------+
1 row in set (3.00 sec)
可以看到,虽然中途 sleep 3 秒,但 now() 函数两次的时间值是相同的; sysdate() 函数两次得到的时间值相差 3 秒
也可以只取当前日期或者当前时间
Curdate(): 获得当前日期
mysql> select curdate();
+------------+
| curdate() |
+------------+
| 2011-03-01 |
+------------+
1 row in set (0.01 sec)
Curtime() : 获得当前时间(time )函数
mysql> select curtime();
+-----------+
| curtime() |
+-----------+
| 10:55:12 |
+-----------+
1 row in set (0.00 sec)
二、 Mysql 日期时间的抽取extract
通过这一功能,我们可以从一个时间中抽取自己想要的部分,例如
mysql> set @ct='2011-03-01 11:16:14.123456';
Query OK, 0 rows affected (0.01 sec)
设置变量ct 为某一时间值,精确到微妙
获取其日期值
mysql> select date(@ct);
+------------+
| date(@ct) |
+------------+
| 2011-03-01 |
+------------+
1 row in set (0.00 sec)
查看此日期所属季度
mysql> select quarter(@ct);
+--------------+
| quarter(@ct) |
+--------------+
| 1 |
+--------------+
1 row in set (0.00 sec)
查看此日期属于当年哪一周
mysql> select week(@ct);
+-----------+
| week(@ct) |
+-----------+
| 9 |
+-----------+
1 row in set (0.00 sec)
另外还有year(),day(),hour(),minute(),second() 等,在此不一一赘述。
采用extract() ,也可以实现类似的功能,语法格式为extract(year from @ct) ,
不足之处在于需要多敲几次键盘
Dayof 函数 :
Dayofweek(),dayofmonth(),dayofyear() 分别返回日期再一周、一月以及一年中的位置
mysql> select dayofweek(@ct);
+----------------+
| dayofweek(@ct) |
+----------------+
| 3 |
+----------------+
1 row in set (0.00 sec)
注意:其实3 月1 号是星期二,但是返回数字3 ,因为是从Sunday 开始算起的(1=Sunday,2=Monday, …)
mysql> select dayofmonth(@ct);
+-----------------+
| dayofmonth(@ct) |
+-----------------+
| 1 |
+-----------------+
1 row in set (0.00 sec)
mysql> select dayofyear(@ct);
+----------------+
| dayofyear(@ct) |
+----------------+
| 60 |
+----------------+
1 row in set (0.00 sec)
Week() 函数
查看日期属于当年的第几周
mysql> select weekofyear(@ct);
+-----------------+
| weekofyear(@ct) |
+-----------------+
| 9 |
+-----------------+
1 row in set (0.00 sec)
返回星期名和月份名的函数
Dayname() —计算日期是星期几
mysql> select dayname(@ct);
+--------------+
| dayname(@ct) |
+--------------+
| Tuesday |
+--------------+
1 row in set (0.02 sec)
Monthname() —计算日期是哪一月
mysql> select monthname(@ct);
+----------------+
| monthname(@ct) |
+----------------+
| March |
+----------------+
1 row in set (0.00 sec)
Last_day() : 返回月份中最后一天
mysql> select now();
+---------------------+
| now() |
+---------------------+
| 2011-03-01 13:15:00 |
+---------------------+
1 row in set (0.00 sec)
mysql> select last_day(now());
+-----------------+
| last_day(now()) |
+-----------------+
| 2011-03-31 |
+-----------------+
1 row in set (0.00 sec)
通过该函数,可以计算出当前月份有多少天
mysql> select now(),day(last_day(now())) ;
+---------------------+----------------------+
| now() | day(last_day(now())) |
+---------------------+----------------------+
| 2011-03-01 13:17:12 | 31 |
+---------------------+----------------------+
1 row in set (0.00 sec)
三、Mysql 的日期时间计算函数
Date_add() : 为日期增加一个时间间隔
具体语法为date_add(@ct, interval num year/quarter/month/week/day/hour/minute/secont/microsecond);
注意: 此函数并不改变变量@ct 的实际值
mysql> set @ct=now();
Query OK, 0 rows affected (0.00 sec)
mysql> select @ct;
+---------------------+
| @ct |
+---------------------+
| 2011-03-01 15:09:16 |
+---------------------+
1 row in set (0.00 sec)
mysql> select date_add(@ct,interval 1 day);
+------------------------------+
| date_add(@ct,interval 1 day) |
+------------------------------+
| 2011-03-02 15:09:16 |
+------------------------------+
1 row in set (0.00 sec)
mysql> select @ct;
+---------------------+
| @ct |
+---------------------+
| 2011-03-01 15:09:16 |
+---------------------+
1 row in set (0.00 sec)
mysql> select date_add(@ct,interval 1 week);
+-------------------------------+
| date_add(@ct,interval 1 week) |
+-------------------------------+
| 2011-03-08 15:09:16 |
+-------------------------------+
1 row in set (0.00 sec)
类似功能还有adddate(),addtime() 等函数,与之相对应的是date_sub() ,顾名思义就是日期减法
另类日期函数
Period_add(P,N): 日期加/ 减去N 月,其中P 的格式应为yyyymm 或yymm
Period_diff(P1,P2): 日期p1-p2 ,返回N 个月
mysql> select period_add(201103,2),period_add(201103,-2) ;
+----------------------+-----------------------+
| period_add(201103,2) | period_add(201103,-2) |
+----------------------+-----------------------+
| 201105 | 201101 |
+----------------------+-----------------------+
1 row in set (0.00 sec)
mysql> select period_diff('201103','201101');
+--------------------------------+
| period_diff('201103','201101') |
+--------------------------------+
| 2 |
+--------------------------------+
1 row in set (0.00 sec)
日期时间相减函数
Datediff(date1,date2) : 两个日期date1-date2
mysql> select datediff('2011-03-09','2011-03-01');
+-------------------------------------+
| datediff('2011-03-09','2011-03-01') |
+-------------------------------------+
| 8 |
+-------------------------------------+
1 row in set (0.00 sec)
mysql> select datediff('2011-03-01','2011-03-09');
+-------------------------------------+
| datediff('2011-03-01','2011-03-09') |
+-------------------------------------+
| -8 |
+-------------------------------------+
1 row in set (0.00 sec)
Timediff(time1,time2) : 两个时间相减
mysql> select timediff('2011-03-03 15:33:00','2011-03-02 15:33:59');
+-------------------------------------------------------+
| timediff('2011-03-03 15:33:00','2011-03-02 15:33:59') |
+-------------------------------------------------------+
| 23:59:01 |
+-------------------------------------------------------+
1 row in set (0.00 sec)
mysql> select timediff('15:33:00','15:33:59');
+---------------------------------+
| timediff('15:33:00','15:33:59') |
+---------------------------------+
| -00:00:59 |
+---------------------------------+
1 row in set (0.00 sec)
四 mysql 日期、时间转换函数
Time_to_sec(time) : 时间—> 秒 转换函数
Sec_to_time(num) : 秒--> 时间 转换函数
mysql> select time_to_sec('01:00:00');
+-------------------------+
| time_to_sec('01:00:00') |
+-------------------------+
| 3600 |
+-------------------------+
1 row in set (0.00 sec)
mysql> select sec_to_time(3600);
+-------------------+
| sec_to_time(3600) |
+-------------------+
| 01:00:00 |
+-------------------+
1 row in set (0.00 sec)
To_days(date) : 日期--> 天 转换函数 起始日期为0000-00-00
From_days(num) : 天--> 日期 将数字转换为具体的日期
mysql> select to_days('2011-03-01');
+-----------------------+
| to_days('2011-03-01') |
+-----------------------+
| 734562 |
+-----------------------+
1 row in set (0.00 sec)
mysql> select from_days(734562);
+-------------------+
| from_days(734562) |
+-------------------+
| 2011-03-01 |
+-------------------+
1 row in set (0.00 sec)
Str_to_date(str,date) : 字符串--> 日期 转换函数
可以将一些杂乱无章的字符转换为日期格式
mysql> select str_to_date('01.03.2011', '%m.%d.%Y');
+---------------------------------------+
| str_to_date('01.03.2011', '%m.%d.%Y') |
+---------------------------------------+
| 2011-01-03 |
+---------------------------------------+
1 row in set (0.00 sec)
mysql> select str_to_date('01/03/2011', '%m/%d/%Y');
+---------------------------------------+
| str_to_date('01/03/2011', '%m/%d/%Y') |
+---------------------------------------+
| 2011-01-03 |
+---------------------------------------+
1 row in set (0.00 sec)
小练习:
以表centralmobile_logs 为例,目前该表总共有270 多万条数据
mysql> select count(*) from centralmobile_logs;
+----------+
| count(*) |
+----------+
| 2725403 |
+----------+
1 row in set (0.00 sec)
现在对其做一些统计
查询过去30 天总共有多少数据
mysql> select count(*) from centralmobile_logs where to_days(curdate())- to_days(create_time)<=30;
+----------+
| count(*) |
+----------+
| 2367518 |
+----------+
1 row in set (3.38 sec)
mysql> select count(*) from centralmobile_logs where datediff(curdate(),create_time) <=30;
+----------+
| count(*) |
+----------+
| 2367518 |
+----------+
1 row in set (3.29 sec)
查看每月第一天的数据
mysql> select count(*) from centralmobile_logs where dayofmonth(create_time)=1;
+----------+
| count(*) |
+----------+
| 161293 |
+----------+
1 row in set (3.14 sec)
查看11 年1 月31 日之前的数据
mysql> select count(*) from centralmobile_logs where create_time <='2011-01-31 00:00:00';
+----------+
| count(*) |
+----------+
| 413797 |
+----------+
1 row in set (0.17 sec)
查看11 年整个二月份的数据
mysql> select count(*) from centralmobile_logs where monthname(create_time)='February' and year(create_time)=2011;
+----------+
| count(*) |
+----------+
| 2149284 |
+----------+
1 row in set (3.94 sec)
查看11 年每个周日的累积数据
mysql> select count(*) from centralmobile_logs where dayname(create_time)='Sunday' and year(create_time)=2011;
+----------+
| count(*) |
+----------+
| 479033 |
+----------+
1 row in set (3.88 sec)
查看每天零点时分插入的数据总和
mysql> select count(*) from centralmobile_logs where time(create_time)='00:00:00';
+----------+
| count(*) |
+----------+
| 37 |
+----------+
1 row in set (3.99 sec)
发表评论
-
查询数值 类型然后返回字符串
2012-09-28 16:31 1299String sql = "select t.tpi ... -
解决问题 贵在一剑封喉
2012-09-27 15:13 895Column 'ttid' in where clause i ... -
mysql用户变量类型的问题想要1 得到1.0
2012-09-17 09:33 1686mysql用户变量类型的问题想要1 得到1.0 select ... -
mysql表中获取去除重复的记录
2012-09-16 22:40 28531.构建表和数据 CREATE TABLE `teacher` ... -
mysql语句的执行顺序问题
2012-09-15 00:59 1633是select 先执行还是group by 先执行? 是se ... -
MySql 的IFNULL、NULLIF和ISNULL函数的用法
2012-09-12 17:47 1665MySql 里的IFNULL、NULLIF和ISNULL用法 ... -
一个简单的mysql存储函数
2012-09-09 17:07 1295delimiter // CREATE FUNCTION c ... -
MySQL存储过程和函数的区别
2012-09-09 16:47 902MySQL存储过程和函数的区别 MySQL的存储过程(stor ... -
几个简单的mysql存储过程
2012-09-09 12:34 1002MySQL存储过程问题 以前没用过MySQL存储过程,第一次写 ... -
mysql表连接的知识待补充
2012-09-08 23:21 916等值连接又叫内链接 inner join 只返回两个表中连接字 ... -
mysql的常用函数
2012-09-08 23:21 868mysql的常用函数 abs(-1)#绝对值 pi()#pi ... -
存储过程和存储函数2
2012-09-08 23:18 881#if语句 if 条件 then 语句 elseif 条件 t ... -
mysql的逆袭:如何做递归层次查询
2012-09-02 21:29 2881最近在做一个从oracle数据库到mysql数据库的移植,遇到 ... -
关于mysql中的decimal类型
2012-08-30 09:48 7936关于mysql中的deci ...
相关推荐
包含了MySQL常用的所有函数及详解。IFNULL(expr1,expr2),FROM_UNIXTIME。
一、时间与日期函数 1. NOW():返回当前日期和时间。 2. CURDATE():返回当前日期。 3. CURTIME():返回当前时间。 4. DATE_FORMAT(date, format):根据指定的格式显示日期或日期/时间值。 5. STR_TO_DATE(str, ...
MySQL支持的日期和时间类型有 DATETIME、TIMESTAMP、DATE、TIME、YEAR ,几种类型比较如下: 涉及到日期和时间字段类型选择时,根据存储需求选择合适的类型即可。 2.日期和时间相关函数 处理日期和时间字段的函数...
对MYSQL的C函数接口做了封装,可以很方便的操作MYSQL数据库,里面还有一个列子程序,但是需要用户自己下载MYSQL SKDK。我上传了一个http://download.csdn.net/source/1091605
自己用C语言实现数字到字符串的转换,包括负数
1. libmysqlclient:这是MySQL客户端库,包含用于连接、查询和其他操作MySQL服务器的API函数。在开发MySQL应用时,通常会链接这个库。 2. libmysqlcppconn:这是一个C++接口的客户端库,为C++开发者提供更高级别的...
4.窗口函数:MySQL 8.0 引入了 SQL 标准的窗口函数,允许用户在数据集上执行复杂的分析操作,如计算累计和、移动平均等,而无需使用子查询或自连接。 5. 存储过程和触发器的改进:MySQL 8 提供了对存储过程和触发器...
mysql5.1参考手册中文版
`mysql-connector-java-8.0.12.jar` 是MySQL 8.0.12版本的JDBC驱动程序,支持最新特性,如JSON列类型、窗口函数、增强的加密功能等。要使用这个驱动,开发者需要在项目中引入该jar包,并配置相应的数据库连接URL、...
接下来,我们需要运行MysqlCDC中的main函数来启动Flink CDC作业。这个作业将会从MySQL源数据库中捕获变更数据,并将其转发到PostgreSQL目标数据库中。 在这个过程中,Flink CDC会使用datastream方式来处理数据。它...
Mysql根据时间查询日期的优化技巧mysql 获取昨天日期、今天日期、明天日期以及前一个小时和后一个小时的时间解析MySQL中存储时间日期类型的选择问题JDBC中使用Java8的日期LocalDate和LocalDateTime操作mysql、...
第二阶段---mysql函数大全pdf 第二阶段---MySQL存储过程实例教程.doc 第二阶段---MYSQL存储过程技术ppt 第二阶段---MySQL导入导出数据库文件.doc 第二阶段---Mysgl数据类型(字段)介绍.doc 第二阶段---MySQL样例...
这些函数在编写涉及日期时间的SQL查询时非常有用。 关于MyEclipse中Tomcat的配置,文档中介绍了如何在MyEclipse工具中通过Preferences菜单找到并配置Tomcat服务器。具体步骤包括设置Tomcat路径、选择JDK配置、设置...
5. **支持新的数据库特性**:随着MySQL数据库的新特性的推出,如窗口函数、JSON操作等,Connector/J 8.0.28也提供了相应的API支持。 6. **连接池管理**:支持常见的Java连接池管理工具,如C3P0、HikariCP和Apache ...
MySQL是世界上最受欢迎的开源关系型数据库管理系统之一,其在各个版本间不断进行更新与优化以满足不断变化的用户需求。本篇文章将详细讨论MySQL8与MySQL5在连接驱动jar包方面的差异,以及如何使用这些驱动来连接Java...
例如,当我们将“CSDN”这个字符串通过`CRC32`函数处理后,得到的结果是-1016176976。 #### 二、CRC32函数原理 CRC32(Cyclic Redundancy Check 32)是一种循环冗余校验算法,其主要功能是检测数据传输过程中的...
2. **功能增强**:MySQL-Front v6.1可能增加了新的功能,比如支持最新的MySQL特性,如JSON字段处理,窗口函数,或者增强的触发器和事件管理。 3. **性能提升**:软件性能的提升通常体现在更快的查询执行速度,更快...
MySQL知识总结思维导图,压缩包内包含MySQL数据库基础、MySQL库的操作、MySQL表的操作(DDL)、MySQL数据类型、MySQL表的约束、MySQL基本查询(DML)、MySQL内置函数、MySQL复合查询、MySQL内外连接、MySQL索引特性...
http://download.csdn.net/source/1091615 对这个版本中的内存泄露BUG做修正。 和这个相同的 http://download.csdn.net/source/1094360
MySQL 提供了丰富的日期和时间函数,使得这类操作变得非常方便。下面将详细介绍如何利用 MySQL 的日期函数来进行这些查询。 #### 1. 查询本周的数据 为了查询当前周的数据,可以使用 `YEARWEEK()` 函数结合 `NOW()...