mysql之常用函数及sql语句

参考链接(如有侵权立即删除)

MYSQL日期获取(本月最后一天、本月第一天、下个月第一天、本月天数、一个月前那一天、当前时间与一个月前之间的天数)——CSDN@
combating

mysql取系统当前时间的函数——CSDN@Marjorie_Sha
MYSQL中可以实现类似IF判断的方法——博客园@奋斗的羊仔
mysql 获取当前日期周一和周日——CSDN@huanghanqian
mysql格式化日期——博客园@都市烟火
mysql 数据库中最新的一条记录 sql查询语句——百度经验@412482552

正文

常用函数

日期函数及常用时间计算

# 函数以`'YYYY-MM-DD HH:MM:SS'返回当前的日期时间,可以直接存到DATETIME字段中。
NOW()
# 获取当前日期,不包含times
curdate() # 2018-06-11
# 获取本月的最后一天
last_day(curdate()); 
#获取本月第一天
select date_add(curdate(), interval - day(curdate()) + 1 day); 
#获取下个月第一天
select date_add(curdate() - day(curdate()) + 1, interval 1 month); 
#获取本月天数
select day(last_day(curdate())); 
#获取一个月前那一天
select date_sub(curdate(), interval 1 month); 
#获取当前时间与一个月之间的天数
select datediff(curdate(), date_sub(curdate(), interval 1 month)); 
# 获取当前日期在本周的周一 
select subdate(curdate(),date_format(curdate(),'%w')-1)
# 获取下周日(由于系统默认一周的开始时间是周日,所以获取下周日,通常是我们所认为的本周日)
select subdate(curdate(),date_format(curdate(),'%w')-7)
# 取一天的结束时间
select DATE_ADD(DATE_ADD(str_to_date(DATE_FORMAT(NOW(),'%Y-%m-%d'),'%Y-%m-%d %H:%i:%s'),INTERVAL 1 DAY),INTERVAL -1 SECOND);  #2018-06-11 23:59:59
# 格式化日期 DATE_FORMAT(date,format),查看本文详细
DATE_FORMAT(NOW(),'%b %d %Y %h:%i %p') # Jun 11 2018 09:13 AM
date_format(NOW(), '%Y-%c-%d %h:%i:%s' ) # 2018-6-11 09:15:26

格式化日期详细说明

格式 说明
%a 缩写星期名
%b 缩写月名
%c 月,数值
%D 带有英文前缀的月中的天
%d 月的天,数值(00-31)
%e 月的天,数值(0-31)
%f 微秒
%H 小时 (00-23)
%h 小时 (01-12)
%I 小时 (01-12)
%i 分钟,数值(00-59)
%j 年的天 (001-366)
%k 小时 (0-23)
%l 小时 (1-12)
%M 月名
%m 月,数值(00-12)
%p AM 或 PM
%r 时间,12-小时(hh:mm:ss AM 或 PM)
%S 秒(00-59)
%s 秒(00-59)
%T 时间, 24-小时 (hh:mm:ss)
%U 周 (00-53) 星期日是一周的第一天
%u 周 (00-53) 星期一是一周的第一天
%V 周 (01-53) 星期日是一周的第一天,与 %X 使用
%v 周 (01-53) 星期一是一周的第一天,与 %x 使用
%W 星期名
%w 周的天 (0=星期日, 6=星期六)
%X 年,其中的星期日是周的第一天,4 位,与 %V 使用
%x 年,其中的星期一是周的第一天,4 位,与 %v 使用
%Y 年,4 位
%y 年,2 位

判断

# case……when…… else……END
CASE expression
WHEN value1 THEN returnvalue1
WHEN value2 THEN returnvalue2
WHEN value3 THEN returnvalue3
……
ELSE defaultreturnvalue
END


# IF(expr1,expr2,expr3)
select t.name,if(t.weight<80,'正常','肥胖') 体重 from t_customer t
# ELT(N,str1,str2,str3,...)
# 如果 N = 1,返回 str1,如果N = 2,返回 str2,等等。如果 N 小于 1 或大于参数的数量,返回 NULL。
SELECT
    t. NAME,
    ELT(
        t. LEVEL,
        '超级VIP',
        'VIP',
        '普通'
    ) 客户类型
FROM
    t_customer t

字符串拼接

# CONCAT(string1,string2,…)
concat('a=','b') # a=b
# CONCAT_WS(separator,str1,str2,...)
CONCAT_WS('=','a','b') # a=b
CONCAT_ws(' ',date_format(NOW(), '%Y-%c-%d' ),DATE_FORMAT(NOW(),'%h:%i:%s')) # 2018-6-11 09:26:40
# 将多组数据合并为一个字符串 separator 是关键字,后面表示用逗号分隔
GROUP_CONCAT(dd.dictionary_Name separator ',') 

字符串转Date

#str_to_date('字符串日期','格式')
str_to_date('2017-10-16 15:30:28','%Y-%m-%d %H:%i:%s')

查询

# 这个函数返回字符串在某一个字段的内容中的位置, 没有找到字符串返回0,否则返回位置(从1开始); 可在博客置顶状态灵活运用
INSTR(字段名, 字符串);

常用sql语句

获取最新一条记录

SELECT mytime from table order by mytime desc LIMIT 1

博客“置顶”状态,排序

# 将带有置顶字段的数据进行排序,也就是排前面
select *from forum t order by  instr(t.state,'置顶') desc

查询多条语句,并拼接成一个字符串

# 查出多个分类数据,拼接成一个字符串
select GROUP_CONCAT(dd.dictionary_Name separator ',')  from t_data_dictionary dd where FIND_IN_SET(dd.dictionary_id , 'abfdfa,dsfoisdf,weorieuo')
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 222,252评论 6 516
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 94,886评论 3 399
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 168,814评论 0 361
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,869评论 1 299
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,888评论 6 398
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 52,475评论 1 312
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 41,010评论 3 422
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,924评论 0 277
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,469评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,552评论 3 342
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,680评论 1 353
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 36,362评论 5 351
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 42,037评论 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,519评论 0 25
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,621评论 1 274
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 49,099评论 3 378
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,691评论 2 361

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 172,312评论 25 707
  • 总结了一些开发中常用的函数: usleep() //函数延迟代码执行若干微秒。 unpack() //函数从二进制...
    ADL2022阅读 457评论 0 3
  • PHP常用函数大全 usleep() 函数延迟代码执行若干微秒。 unpack() 函数从二进制字符串对数据进行解...
    上街买菜丶迷倒老太阅读 1,373评论 0 20
  • 夜凉如水,月光的翅膀轻拂过你的脸庞,星光微弱到刚好能平息白昼的喧嚣。你来吗?做一丝微光,渗透进如水的夜晚,让它透出暖亮。
    冰蓝兮儿阅读 214评论 0 0
  • 爱旅游的小黑妹阅读 244评论 0 0