能经常用到的 SQL 语句

1.一张表根据某一个字段去修改另一个字段的值

语法:UPDATE 表名称 SET 字段名称  = 新值  WHERE 字段名称 = 某值

2.单表新增数据

语法  : insert  into  表名称 
        (字段1,字段2,字段3,....) values  (#{对应实体类字段1},#{字段2},#{字段3},....)

3.单表根据id 修改数据

语法 : update 表名称 set  字段1=#{对应实体类字段1},字段2=#{字段2},....
        where 主键ID= #{id}

4.单表删除一条数据

语法 : DELETE FROM 表名称 WHERE 字段名称 = 值

5.新增修改获取myspl 数据库时间

语法 :insert  into 表名称  (数据库时间字段) values (now())

语法 :update  表名称 set  数据库时间字段 = now()


**这里只是对时间字段的解释,新增和修改肯定还有别的字段,各位自加哈

6.清空表中某一列该字段的值

UPDATE 表名 SET 字段= null WHERE 字段 = 值

7.MySQL 之  几种连接

sql 几种连接https://blog.csdn.net/qq_37763760/article/details/100119623?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522166536933216782395396907%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=166536933216782395396907&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduend~default-2-100119623-null-null.142%5Ev52%5Econtrol,201%5Ev3%5Econtrol_1&utm_term=sql%E4%B9%8B%E8%BF%9E%E6%8E%A5&spm=1018.2226.3001.4187

 8.数据库两个时间字段相减

        
SELECT (时间字段名 ::时间字段类型 —— 时间字段名::时间字段类型) AS 别名  from 表名

9.根据时间字段去查询,条件为时间字段的, 年,月,日,时

         去重            日
SELECT  distinct (EXTRACT(DAY FROM  start_stamp)) AS 日,
         时间字段
count(answer_stamp) AS 接听 ,
count(answer_stamp is NULL) AS 总数,
(count(answer_stamp is NULL) - count(answer_stamp)) as 未接听
FROM 表名
WHERE start_stamp >= '2019-04-09 00:00:00' AND start_stamp <='2019-05-09 23:59:59'
GROUP BY 日 ORDER BY 日 



HOUR 时,DAY 日,MONTH 月

10.两条sql 根据相同列 合并其他列 案例

SELECT a1.*,a2.未,(a1.总 - a1.接 - a2.未) as 放弃 FROM 
(SELECT  distinct (EXTRACT(HOUR FROM  start_stamp)) AS ytd,
count(*) as 总 ,count(answer_stamp) as 接
        FROM 表名 WHERE   start_stamp >= '开始时间' and start_stamp   <= '结束时间'
        GROUP BY ytd ORDER BY ytd ) a1

LEFT JOIN

 (SELECT distinct (EXTRACT(HOUR FROM  start_stamp)) AS ytd,"count"(*) as 未 FROM 表名 WHERE leg = 'a' and  cc_agent_type = 'callback' and
                cc_queue is not null 
                and cc_agent is NOT null and answer_stamp is NULL  and start_stamp >= '开始时间' and start_stamp   <= '结束时间'
 GROUP BY ytd ORDER BY ytd ) a2 on a1.ytd = a2.ytd

11.数值和时间范围查询都可以

                                       >=             <=
SELECT * FROM 表名 WHERE 数据库条件字段 BETWEEN 开始时间 AND 结束时间;

12.模糊查询


SELECT * FROM 表名 WHERE 数据库字段 like CONCAT('%', #{实体类字段}, '%');

13.数据库表新增字段

ALTER TABLE 表名
                                 给字段设置默认值
ADD COLUMN 字段名  字段类型(长度)  NOT NULL DEFAULT 1  COMMENT '字段注释',

ADD COLUMN 字段名  字段类型(长度)  不设置默认值   COMMENT '注释'

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值