返回顶部
首页 > 资讯 > 数据库 >数据库技能实战进阶之常用结构化sql语句(中)
  • 256
分享到

数据库技能实战进阶之常用结构化sql语句(中)

2024-04-02 19:04:59 256人浏览 薄情痞子
摘要

   在上篇文章中我们介绍到查询里面关于order by对查询结果的排序处理,接下来我们将介绍其他的一部分操作。10、limit 限制查询结果条数   在Mysql数

   在上篇文章中我们介绍到查询里面关于order by对查询结果的排序处理,接下来我们将介绍其他的一部分操作。

10、limit 限制查询结果条数

   在Mysql数据库里面我们要想显示前10行,或者第x行到n行之类的格式显示,这时limit将是我们最好的选择。

select  * from  user limit 5; #显示前5行
1    kailinux    javaDocker
2    LInuxmysql    NULL
3    python    NULL
4    LInux    Redis
5    linux    0
假如我们想看倒数3行,但是limit不支持倒序,我们可以用以前的方式实现
select   * from  user limit 21,3;
26    redispyhon    
27    Python234    
28    winner1234    
从3开始显示5条
select   * from  user limit 3,5;
4    LInux    redis
5    linux    0
6    redis    name 
7    kailinux    javadocker
8    LInux    redis

11、mysql 常用函数

 连接函数concat()

语法:CONCAT(str1,str2,...) 可以用来拼接查询结果,

select   CONCAT(username,'*****',passWord) from user  #将user表的username和password列用4
个****拼接。
结果:
kailinux*****javadocker
LInuxmysql*****NULL
python*****NULL
LInux*****redis
linux*****0
用下划线或者横线拼接
kailinux_javadocker
LInuxmysql_NULL
python_NULL
LInux_redis
kailinux-javadocker
LInuxmysql-NULL
python-NULL

select   CONCAT(username,'',password) from user #不指定间隔直接拼接两列
kailinuxjavadocker
LInuxmysqlNULL
pythonNULL
LInuxredis

 由此可以看出concat()函数在拼接的时候可以指定任意连接符,达到对数据查询不同结果的显示。

随机函数rand()

  这种随机函数,可以在查询结果里面随机排序之类的处理

select   *  from user  order by rand();
5    linux    0
8    LInux    redis
15    python    javadocker
16    LInux    
2    LInuxmysql    NULL
7    kailinux    javadocker
28    winner1234    
20    Centos    
17    linux    999
6    redis    name 
3    python    NULL
26    redispyhon    
22    rediswinner    
25    PYTHoREDIS    
27    PYthon234    
这种随机数里面就可以用来抽奖之类的,我们将随机排序的再获取3行,
select   *  from user  order by rand() limit 3;
23    PYthonmysql    
27    PYthon234    
4    LInux    redis

统计列数count()

select count(*)  from user   就可以查询出某表里面包含多少条数据等,这里挑选列时一般选择主键相关的列。

select   count(*)  from user  ;
24

select count(id ) from user  ;  但是这种在数据量大时会比较慢

求和函数sum()

select   sum(id)  from user  ; #对id求和

356

求最大值max()

select   max(id)  from user  ;
28

求最小值函数()

select   min(id)  from user  ;
1

平均函数avg()

select   avg(id)  from user  ;
14.8333

分组函数group  by

select   username,count(*) from user  GROUP BY username ; #按用户名分组,可以统计
出相同用户的信息

centos    1
kailinux    3
LInux    5
LInuxmysql    1
python    2
PYthon234    1
PYTHonmysql    2
PYTHoREDIS    1
redis    3
redispyhon    1
rediswinner    1
ubuntu    1
winner1234    1
winnerredis    1

关于多表查询的相关知识请看之前的有关mysql的文章。

您可能感兴趣的文档:

--结束END--

本文标题: 数据库技能实战进阶之常用结构化sql语句(中)

本文链接: https://lsjlt.com/news/36826.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作