mysql数据库常用的操作

CONCAT函数

解释

1、功能:将多个字符串连接成一个字符串。

2、语法:concat(str1, str2,...)

返回结果为连接参数产生的字符串,如果有任何一个参数为null,则返回值为null
SELECT CONCAT(id, ' ', task_name, ' ', FROM_UNIXTIME(task_start_tms/1000, "%Y-%m-%d")) 
FROM kp_report_dt

结果:
CONCAT(id, ' ', task_name, ' ', FROM_UNIXTIME(task_start_tms/1000, "%Y-%m-%d"))
7477 des 2020-06-08
7478 dew 2020-06-08
7479 cfdfd 2020-06-08

业务用法

UPDATE kp_report_dt set task_name= CONCAT("测试", FROM_UNIXTIME(task_start_tms/1000, "%Y-%m-%d")) where task_type="Task"```

结果:将某两个字段按照自己样式重新定义结果
id	time_create	task_id	task_desc	task_name	task_start_tms	task_type
7477	2020-06-16 18:02:58.687577	2e065c18fe6b07e72fb3d306ff589350	eea	测试2020-06-08	1591581604445	Task
7493	2020-06-16 18:03:07.933879	9f3d6735f3cdb30aedb011190f3ba113	azzx	测试2020-06-09	1591683000395	Task
7539	2020-06-16 18:03:43.673299	65a94859e4347e3b23e91c8b0a220e2e	wqeq	测试2020-06-10	1591766591440	Task
7540	2020-06-16 18:03:44.132099	ac05d08aba1f3e9b54873c72abeafed5	wqe	测试2020-06-10	1591766690989	Task

FROM_UNIXTIME函数

-- unix 时间戳 转换成 '2019-01-22 15:45:06'
select FROM_UNIXTIME(timelong) from testsssssss; ```

UNIX_TIMESTAMP函数

-- 时间'2019-01-22 15:45:06' 转换成 unix 时间戳 格式化时间--》unix timestamp
select UNIX_TIMESTAMP(time) from testsssssss;

CONCAT_WS函数

1、功能:和concat()一样,将多个字符串连接成一个字符串,但是可以一次性指定分隔符~(concat_ws就是concat with separator)

2、语法:concat_ws(separator, str1, str2, ...)

说明:第一个参数指定分隔符。需要注意的是分隔符不能为null,如果为null,则返回结果为null```

用法和concat一样,不再赘述

str_to_date

-- 字符串转时间,格式化
select str_to_date('2019-01-22','%Y-%m-%d') from testsssssss;

DATE_FORMAT

-- 时间转字符串, 格式化
select DATE_FORMAT(time,'%Y-%m-%d %H:%i:%s') from testsssssss;

LEFT(s,n)

返回字符串 s 的前 n 个字符
SELECT LEFT('runoob',2) -- ru

连接查询

原始表
评论表mi_ckeditor_choice
在这里插入图片描述
文章表mi_ckeditor_question
在这里插入图片描述

内连接

关键字:inner join on

语句:select * from a_table a inner join b_table b on a.a_id = b.b_id;

说明:组合两个表中的记录,返回关联字段相符的记录,也就是返回两个表的交集(阴影)部分。

SELECT * FROM 
`mi_ckeditor_question` a 
INNER JOIN 
mi_ckeditor_choice b 
on 
a.author_id=b.author_id

结果:
在这里插入图片描述

左连接查询 left join

关键字:left join on / left outer join on

语句:SELECT * FROM a_table a left join b_table b ON a.a_id = b.b_id;

说明: left join 是left outer join的简写,它的全称是左外连接,是外连接中的一种。 左(外)连接,左表(a_table)的记录将会全部表示出来,而右表(b_table)只会显示符合搜索条件的记录。右表记录不足的地方均为NULL。

SELECT * FROM 
`mi_ckeditor_question` a 
LEFT JOIN 
mi_ckeditor_choice b 
on 
a.author_id=b.author_id

结果:
在这里插入图片描述

右连接 right join

关键字:right join on / right outer join on

语句:SELECT * FROM a_table a right outer join b_table b on a.a_id = b.b_id;

说明:right join是right outer join的简写,它的全称是右外连接,是外连接中的一种。与左(外)连接相反,右(外)连接,左表(a_table)只会显示符合搜索条件的记录,而右表(b_table)的记录将会全部表示出来。左表记录不足的地方均为NULL。

SELECT * FROM 
`mi_ckeditor_question` a 
RIGHT JOIN 
mi_ckeditor_choice b 
on 
a.author_id=b.author_id

结果:
在这里插入图片描述

更多的请看菜鸟教程点我

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值