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

在上篇文章中我们介绍到查询里面关于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的文章。

时间: 2024-11-05 17:20:11

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

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

常用的结构化查询语言主要分为数据定义语言(DDL).数据操作语言(DML).数据控制语言(DCL)和数据查询语言(DQL).特别在关系型的数据库例如(mysql.mariadb. percona.DB2.Oracle.SQL server)等都是采用共同的SQL语句来实现增删改查等数据的管理.本文会针对以下的四种类型的结构化SQL来进行介绍. DDL 数据定义语言  create     drop     alter DML 数据操作语言  insert    delete   update D

结构化查询语句格式

数据库(DataBase):存放数据的仓库;存放的是一张一张的表,特别像Excel,都以表格形式存放数据,可以创建多张表 常见的数据库: sqlite ,access, MySQL,SqlServer, Oracle; 为什么要用数据库; 1.文件读写,归档读取数据需要一次把数据全部读出来,占内存 2.数据库查找数据效率很高,体现在查找数据,数据修改(增删改查) SQL(structured Query Language )结构化查询语句,用于对数据库的操作语句(增删改查) SQL语句不区分大小

SQL结构化查询语句

SQL结构化查询语句 SQL定义了查询所有关系型数据库的规则. 1.通用语法 SQL语句可以单行或者多行书写,以分号结尾 可以使用空格和缩进增强可读性 不区分大小写,但是关键字建议大写 3种注释 注释内容:多行注释/*;-- 注释内容 2.SQL分类 DDL(Date Definition Language)数据定义语言 用来定义数据库对象:数据库.表.列等,包括关键字:create,drop.alte DML(Data Manipulation Language)数据操作语言,增删改 用来对数

结构化查询语句

目录 概述 实用的结构化查询语句 概述 实用的结构化查询语句

转:ibatis常用16条SQL语句

1.输入参数为单个值 <delete id="com.fashionfree.stat.accesslog.deleteMemberAccessLogsBefore" parameterClass="long"> delete from MemberAccessLog where accessTimestamp = #value# </delete> <delete id="com.fashionfree.stat.acces

SQL语句中常用关键词及其解释如下.pdf

SQL语句中常用关键词及其解释如下.pdf 路径 C:\Users\Administrator\Desktop\ 大小 1.18 MB 类型 PDF 文件 修改日期 2016年12月1日 16:50:15 文件被导入 2016年12月1日 17:02:34 附件列表

在myeclipse中配置DB Driver(数据库用MySql),并在myeclipse执行sql语句操作

在myeclipse中配置DB Driver(数据库用MySql),并在myeclipse执行sql语句操作 MyEclipse6.5    ,  mysq驱动jar包为mysql-connector-java-5.1.8-bin.jar 在MyEclipse中添加hibernate支持时需要用到DB Driver所以需要配置 首先选择window-->Open Perspective-->Other 出现下图:选择MyEclipse Database Explore. 点击OK后出现如下画面

ElasticSearch常用结构化搜索

最近,需要用到ES的一些常用的结构化搜索命令,因此,看了一些官方的文档,学习了一下.结构化查询指的是查询那些具有内在结构的数据,比如日期.时间.数字都是结构化的. 它们都有精确的格式,我们可以对这些数据进行逻辑操作,比较常见的操作包括比较时间区间,或者获取两个数字间的较大值. 精确查询 当进行精确查询时,过滤器filter是十分重要的,因为它们效率非常高,过滤器不计算相关性(直接跳过了整个记分阶段)而且很容易进行缓存. 过滤数字 我们首先看 term filter,它最常用,可以用来处理数字,布

Mysql数据库理论基础之三 --- 数据类型及SQL结构化查询语句使用

一.简介 由MySQL AB公司开发,是最流行的开放源码SQL数据库管理系统,主要特点: 1.是一种数据库管理系统 2.是一种关联数据库管理系统 3.是一种开放源码软件,且有大量可用的共享MySQL软件 4.MySQL数据库服务器具有快速.可靠和易于使用的特点 5.MySQL服务器工作在客户端/服务器模式下,或嵌入式系统中 InnoDB存储引擎将InnoDB表保存在一个表空间内,该表空间可由数个文件创建.这样,表的大小就能超过单独文件的最大容量.表空间可包括原始磁盘分区,从而使得很大的表成为可能