Mysql 不常用但可能会用到的sql

1.查询数据,并带上行号

SELECT @rowno:=@rowno + 1 AS row_no,a.* FROM t_pub_user a,(SELECT @rowno:=0) b

2.生成随机数, RAND()函数

SELECT CONCAT('20181102',FLOOR(+ RAND() * 1000000000000))

3.格式化时间,DATE()函数

--yyyy-mm-dd HH:mi:ss 格式
select NOW() from DUAL 
--yyyy-dd-mm格式
select DATE(NOW()) FROM DUAL
--对时间格式化后进行比较
select * from t_user where DATE(end_time)>=DATE(NOW())

4.select insert ,边查询边插入。如果两张表相同,可用下面语句进行赋值表

INSERT into t_pub_salary (select * from t_pub_salary_temp)

5.FIND_IN_SET函数,查询一个数值是否在如:'1,12,13,14,15'这样的数据中

--当'1,11,12,13'中存在12的话,会显示‘name’,如果不存在,则不显示
select 'name' from dual where FIND_IN_SET('12','1,11,12,13')

6.创建索引

--括号里是要创建的索引字段--
CREATE INDEX saying_text ON t_pub_saying (text)

7.给某一数据指定编码格式

select name FROM t_vote_object ORDER BY CONVERT(name USING gbk)

9.查看是否有死锁,并杀死进程

--查询所有进程
show processlist   
--查询阻塞进程
select trx_state, trx_started, trx_mysql_thread_id, trx_query from information_schema.innodb_trx 
--杀死进程
kill 1659499 

10.修改字段属性alter modify

alter table t_pub_user modify image_url varchar(4000)

 github上有我更多的笔记:Raray-chuan (兮川) · GitHub,欢迎stars与following,如果有问题可以在issue中向我咨询

关注我的公众号,获取更多关于后端、大数据的知识

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值