MySQL 常用查询 分页

本文详细介绍了SQL查询的多种实用技巧,包括使用UUID和NOW()函数进行数据操作,字符串拼接的CONCAT函数详解,以及分页查询的优化方法。通过具体实例展示了如何格式化时间,高效地进行分页查询,利用子查询和JOIN提高查询效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、

SELECT UUID();
SELECT NOW();
SET @schoolId = '1234567890123456789';

SELECT * sys_user_info WHERE  mobile IS NULL
SELECT * sys_user_info WHERE  mobile IS NOT NULL

SET @adminId = '';
SELECT @adminId := id FROM sys_user_info WHERE mobile = 'admin';

-- 时间格式化
SELECT DATE_FORMAT(capture_time, '%Y-%m-%d'),`inout`,student_id 
FROM trans_student_inout 
WHERE DATE_FORMAT(created_time, '%Y-%m-%d')='2019-08-01';
GROUP BY DATE_FORMAT(capture_time, '%Y-%m-%d'),`inout`,student_id;

-- 时间格式化
SELECT * FROM sys_user_info WHERE DATE_FORMAT(created_time, '%Y-%m-%d') = '2019-08-01';

2、CONCAT 函数
函数:CONCAT(str1,str2,…)
描述:字符串 s1,s2 等多个字符串合并为一个字符串;合并多个字符串;
注意:如有任何一个参数为NULL ,则返回值为 NULL;
实例

SELECT CONCAT("SQL ", "Runoob ", "Gooogle ", "Facebook") AS ConcatenatedString;

实例

SET @ex123 = '\'123',\'456\'';
SET @sql123 = CONCAT('SELECT * from sys_user_info where user_name in (',@ex123,')');
SELECT @sql123;

4、分页

-- MySQL Limit 语法格式
-- 当偏移量很小时,查询速度很快,但是当偏移量很大时,查询速度就会变慢。
SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset

select * from users limit(pageIndex - 1) * pageSize, pageSize

select * from users limit 0, 10

select * from users order by id desc limit 0, 10

-- 利用索引
select * from users where id > 10 order by id asc limit 10

-- 利用索引
select * from users where id > 10 order by id asc limit 10, 10

-- 子查询(优化方法)
select * from users
where id >= (select id from users limit 100000, 1)
limit 20

-- join
select * from users
join (select id from users limit 100000, 10) b
on a.id = b.id

5、
6、
7、
8、
9、
0、

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值