• MySQL 数据查询语句


    一般查询

    字段取别名

    别名不用加单引号,as 可省略。

    select t.id   ID,
           t.name 名称
      from grade t;
    
    • 1
    • 2
    • 3

    拼接字符串

    concat(a, b)

    select concat('姓名:', t.name) 新名字
      from student t;
    
    • 1
    • 2

    不能用 ||

    字段去重

    select distinct t.name
      from student t;
    
    • 1
    • 2

    计算(表达式)

    select 100 * 3 - 1 计算结果;
    
    • 1

    查询自增的步长(变量)

    select @@AUTO_INCREMENT_INCREMENT 自增步长;
    
    • 1

    用not实现不等于过滤

    select t.id, t.name
      from student t
     where not t.id = 1;
    
    • 1
    • 2
    • 3

    自连接

    把一张表拆分成两张表。

    select a.categoryName, b.categoryName
      from category a
     inner join category b
        on a.categoryID = b.parentID;
    
    • 1
    • 2
    • 3
    • 4

    分页查询

    分页公式

    limit (curPage - 1) * pageSize, pageSize
    
    • 1

    curPage 是当前第几页;pageSize 是一页多少条记录。

    总页数公式

    int totalPageNum = (totalRecord + pageSize - 1) / pageSize;
    
    • 1

    totalRecord是总记录数;pageSize是一页分多少条记录

    查询前 5 条记录

    select *
      from category
     limit 0, 5;
    
    • 1
    • 2
    • 3

    为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1

    select *
      from category
     limit 5, -1;
    
    • 1
    • 2
    • 3

    如果只给定一个参数,它表示返回最大的记录行数目

    select *
      from category
     limit 5;
    
    • 1
    • 2
    • 3

    由此可见,limit n 等价于 limit 0, n

    运算函数

    绝对值

    select abs(-8);
    
    • 1

    向上取整

    select ceiling(9.4);
    
    • 1

    向下取整

    select floor(9.4);
    
    • 1

    随机数

    取 0 - 1 之间的随机数

    select rand();
    
    • 1

    返回数字的符号

    0 返回 0,正数返回 1,负数返回 -1。

    select sign(-10);
    
    • 1

    字符串函数

    返回字符串长度

    select char_length('HaHaHaHa');
    
    • 1

    拼接字符串

    select concat('我', '爱', '你');
    
    • 1

    插入字符串

    待插入字符串, 插入位置, 替换几个字符, 替换的字符串

    select insert('我爱你', 3, 1, '超级爱');
    
    • 1

    字符转小写

    select lower('HaHaHaHa');
    
    • 1

    字符转大写

    select upper('HaHaHaHa');
    
    • 1

    返回第一次出现的子字符串的索引

    select instr('HaHaHaHa', 'H');
    
    • 1

    替换字符串

    待替换字符串, 要替换的字符串, 替换的字符串

    select replace('我爱你', '爱', '超级爱');
    
    • 1

    截取字符串

    待截取字符串, 截取的位置, 截取的字符数

    select substr('HaHaHaHa', 5, 4);
    select substring('HaHaHaHa', 5, 4);
    
    • 1
    • 2

    反转

    select reverse('我爱你');
    
    • 1

    时间和日期函数

    获取当前日期(年-月-日)

    select curdate();
    select current_date();
    
    • 1
    • 2

    获取当前时间(时:分:秒)

    select curtime();
    select current_time();
    
    • 1
    • 2

    获取当前时间(年-月-日 时:分:秒)

    select now();
    
    • 1

    获取当地时间

    select localtime();
    
    • 1

    获取系统时间

    select sysdate();
    
    • 1

    获取年

    select year(now());
    
    • 1

    获取月

    select month(now());
    
    • 1

    获取日

    select day(now());
    
    • 1

    获取时

    select hour(now());
    
    • 1

    获取分

    select minute(now());
    
    • 1

    获取秒

    select second(now());
    
    • 1

    系统函数

    数据库版本

    select version();
    
    • 1

    用户

    select user();
    select system_user();
    
    • 1
    • 2

    平均值

    select avg(t.categoryID)
      from category t;
    
    • 1
    • 2

    加密

    select md5(t.pwd)
      from student t;
    
    • 1
    • 2
  • 相关阅读:
    Linux--socket编程
    正则表达式
    如何进入互联网行业,成为产品经理?没有项目经验如何转行当上产品经理?
    Hive优化语句
    MySql数据库的存储过程以及一些常见区别问题
    容器化 | 在 Rancher 中部署 MySQL 集群
    网络安全之CSRF漏洞原理和实战,以及CSRF漏洞防护方法
    go语言基本操作--四
    密码学系列之七:数字签名
    北斗智能终端:助力森林保护的新利器
  • 原文地址:https://blog.csdn.net/qq_37770674/article/details/125885492