SQL语句写法

1. Mysql查询24小时以内的数据,怎么表示24小时以内:

create_time >=(NOW() - interval 24 hour)

2.mysql时间相减获取秒值

TIMESTAMPDIFF(unit,begin,end);

begin、end:时间格式

unit参数是确定(end-begin)的结果的单位: 

  • MICROSECOND  微秒
  • SECOND  秒
  • MINUTE  分钟
  • HOUR  小时
  • DAY  天
  • WEEK  周
  • MONTH  月份
  • QUARTER YEAR  年份

3.批量查询或删除

SELECT * from 表名 where 列名in ( 值1 ,值2) 

MyBatis写法:


        delete from 表名 where 列名 in
        
            #{xxxx}
        
    

4.MYSQL修改某一字段中某一值的部分值

UPDATE tb_userinfo SET image = REPLACE (image, 'aaa', 'bbb');

  • tb_userinfo:  表名
  • image: 字段名
  • aaa:  原来值
  • bbb: 修改值

5.在日期中添加或减去指定的时间间隔。

DATE_ADD(date,INTERVAL expr type) 函数向日期添加指定的时间间隔。
DATE_SUB(date,INTERVAL expr type) 函数向日期减少指定的时间间隔。

  date 参数是合法的日期表达式
  expr参数是您希望添加的时间间隔
  type 参数时间类型:

  • MICROSECOND  微秒
  • SECOND  秒
  • MINUTE  分钟
  • HOUR  小时
  • DAY  天
  • WEEK  周
  • MONTH  月份
  • QUARTER YEAR  年份

例: DATE_ADD(NOW(), INTERVAL 2 DAY)------两天后的时间

6.字符串格式日期转换成日期格式

to_date(XGRQ,date) 

 XGRQ   字段名

  date 参数是合法的日期表达式---yyyy-mm-dd hh24:mi:ss

7.trim 函数

TRIM ( [ [位置] [要移除的字串] FROM ] 字串): [位置] 的可能值为 LEADING (起头), TRAILING (结尾), or BOTH (起头及结尾)。 这个函数将把 [要移除的字串] 从字串的起头、结尾,或是起头及结尾移除。如果我们没有列出 [要移除的字串] 是什么的话,那空白就会被移除。

LTRIM(字串): 将所有字串起头的空白移除。

RTRIM(字串): 将所有字串结尾的空白移除。

8.截取指定字符前的值

字符串 "AAA-BBB" 截取"AAA"  "BBB"

select substr('AAA-BBB',1,instr('AAA-BBB','-',-1)-1) 值 from dual;

 

9.SQL SERVER 提取字符串中汉字

SELECT DBO.GET_ZNSTR('12wqw%%…中文…%¥#')

IF OBJECT_ID('DBO.GET_ZNSTR') IS NOT NULL
DROP FUNCTION DBO.GET_ZNSTR
GO
CREATE FUNCTION DBO.GET_ZNSTR(@S NVARCHAR(100))
RETURNS VARCHAR(100)
AS
BEGIN
WHILE PATINDEX('%[^吖-座]%',@S) > 0
SET @S = STUFF(@S,PATINDEX('%[^吖-座]%',@S),1,N'')
RETURN @S
END
GO

你可能感兴趣的:(数据库,MYSQL,mysql,数据库,sql)