数据查询语言

select * from t_hq_ryxx;

select bianh,xingm from t_hq_ryxx;

--as  指定别名

select bianh as 编号, xingm as 姓名 from t_hq_ryxx  t;

select bianh  编号 from t_hq_ryxx

select bianh ||xingm as 编号和姓名 from t_hq_ryxx ;

-- order by 按**排序

--desc  降序

--asc  升序   省略的时候默认升序

select bianh as 编号, t.* from t_hq_ryxx t order by bianh desc;

select bianh as 编号, t.* from t_hq_ryxx t order by xingb,bumbm;

select bianh as 编号, t.* from t_hq_ryxx t order by xingb desc,bumbm desc;

select bianh,xingb from t_hq_ryxx order by bianh,xingb;

--数据为空的放最上  last 为放在最下

select bianh as 编号, t.* from t_hq_ryxx t order by xingb,bumbm nulls first ;

-- 1 指第一列

select * from t_hq_ryxx t order by 1;

--按部门编码+编号的和排序

select * from t_hq_ryxx t order by bumbm || bianh;

select nianl,gongz,(nianl+gongz) as g from t_hq_ryxx t order by(nianl+gongz) desc;

--去重复

select distinct bumbm from t_hq_ryxx t ;

select distinct bumbm,xingb from t_hq_ryxx t ;

select * from t_hq_ryxx where xingb = ‘1‘and bumbm = ‘102‘ ;

select * from t_hq_ryxx where bumbm = ‘103‘or bumbm = ‘102‘ ;

select * from t_hq_ryxx where (bumbm = ‘103‘or bumbm = ‘102‘) and xingb = ‘2‘ ;

select * from t_hq_ryxx where bumbm = ‘103‘or bumbm = ‘102‘ and xingb = ‘2‘ ;

--不可用 gongz = null

select * from t_hq_ryxx where gongz is not null;

select * from t_hq_ryxx where gongz != ‘0.00‘;

--模糊查询   %通配符   _ 通配一位

select * from t_hq_ryxx where xingm like ‘李%‘;

select * from t_hq_ryxx where xingm like‘%大%‘;

select * from t_hq_ryxx where xingm like‘%三‘;

select * from t_hq_ryxx where xingm like‘大_王‘;

select * from t_hq_ryxx where xingm like ‘李_‘;

select * from t_hq_ryxx where bianh in(‘101‘,‘103‘,‘105‘);

select * from t_hq_ryxx where bianh = ‘103‘or bianh = ‘101‘ or bianh = ‘105‘ ;

-- between and 为内包含

select * from t_hq_ryxx where gongz between 5000 and 10000;

select * from t_hq_ryxx where gongz >= 5000 and gongz <= 10000;

--子查询

select * from t_hq_ryxx where bumbm in (select bumbm From t_hq_bm where lianxdh =‘10086‘);

--any  大于最小的 小于最大的(大于或小于子查询中的一个)

select * from t_hq_ryxx where gongz > any (select pinjgz from  t_hq_bm);

select * from t_hq_ryxx where gongz < any (select pinjgz from  t_hq_bm);

--all 大于最大的  小于最小的(大于或小于子查询的所有值)

select * from t_hq_ryxx where gongz > all (select pinjgz from  t_hq_bm);

select * from t_hq_ryxx where gongz < all (select pinjgz from  t_hq_bm);

--分组

select bumbm,count(1)as 数量 from t_hq_ryxx group by bumbm;

select bumbm,count(1)as 数量 ,avg(gongz) as 平均值,sum(gongz) as 合计 from t_hq_ryxx  group by bumbm;

select bumbm,count(1)as 数量 ,avg(gongz) as 平均值,sum(gongz) as 合计 from t_hq_ryxx where bumbm is not null group by bumbm;

--having  过滤

select bumbm,count(1)as 数量 ,avg(gongz) as 平均值,sum(gongz) as 合计 from t_hq_ryxx group by  bumbm having avg(gongz) > 5000;

-- 内连接 --inner 可以省略

select * from t_hq_ryxx t inner join t_hq_bm b on t.bumbm = b.bumbm ;

select * from t_hq_ryxx a,t_hq_ryxx b where a.bumbm=b.bumbm and a.xingb = ‘1‘;

select t.*,b.bummc from t_hq_ryxx t, t_hq_bm b where t.bumbm = b.bumbm ;

-- 内连接  inner 可以省略

select * from t_hq_ryxx t inner join t_hq_bm b on t.bumbm = b.bumbm ;

select * from t_hq_ryxx a,t_hq_ryxx b where a.bumbm=b.bumbm and a.xingb = ‘1‘;

--左外连接

select * from t_hq_ryxx t left join t_hq_bm b on t.bumbm = b.bumbm ;

select * from t_hq_ryxx t inner join t_hq_bm b on t.bumbm = b.bumbm(+) ;

--右外连接

select * from t_hq_ryxx t right join t_hq_bm b on t.bumbm = b.bumbm ;

select * from t_hq_ryxx t inner join t_hq_bm b on t.bumbm(+) = b.bumbm ;

--全外连接

select * from t_hq_ryxx t full join t_hq_bm b on t.bumbm = b.bumbm ;

时间: 2024-10-05 11:14:40

数据查询语言的相关文章

SQL 复习二(数据查询语言)

1.1 数据查询语言 DQL就是数据查询语言,数据库执行DQL语句不会对数据进行改变,而是让数据库发送结果集给客户端. 语法: SELECT selection_list /*要查询的列名称*/ FROM table_list /*要查询的表名称*/ WHERE condition /*行条件*/ GROUP BY grouping_columns /*对结果分组*/ HAVING condition /*分组后的行条件*/ ORDER BY sorting_columns /*对结果分组*/

八:SQL之DQL数据查询语言单表操作

前言: DQL数据库查询语言是我们在开发中最常使用的SQL,这一章总结了单表操作部分的常用查询方式 主要操作有:查询所有字段.查询指定字段.查询指定记录.带IN的关键字查询,范围查询,陪查询.查询空值 带AND的多条件查询.带OR的多条件查询,关键字DISTINCT,查询结果排序,分组查询.分页查询等 准备好数据测试表 1 mysql> select * from student; 2 +------+----------+-------+----------+-------------+ 3

DQL(Data Query Language)数据查询语言

数据库的好处 可持久化数据到本地 实现结构化查询 数据库的常见概念 DB(DATABASE):数据库 DBMS(DATABASE Management stytem):数据库管理系统 SQL:结构化查询语言,用于和数据库通信的语言,不是某个数据库特有的,而是几乎所有主流数据库软件通用的语言 数据库存储数据的特点 数据存放在表中,然后表再放在库中 一个库中可以存着多张表 表中有一个或者多个列,列又称为"字段" MYSQL 的优点 开源,免费,成本低 性能高,移植性好 体积小,便于安装 M

数据存储——SQLite数据库存储——SQL语句——DQL数据查询语言

一.where  查询条件 1.操作符 (1)is null/is not null  判断控/非空 (2)like  模糊比较字符串 ①通配符 1)%  任意数量字符 2)_   单个字符 ②用法 1)like  ‘%条件%’ 2)like  ‘%条件’ 3)like  '条件%' 4)like  '_条件_' 5)like  '_条件' 6)like  '条件_' (3)in  判断是否在值得列表内 ①和对单个字段  or  运算等效 ②用法 1)字段名 in (值1,值2,...) 2)字

数据存储——SQLite语句之DQL 数据查询语言

一.select 语句 格式:select   字段内容  from  表名 1.字段列表 1-*全部字段 2-逗号间隔的字段名列表 3-用as(可省略)指定别名 2.DISTINCT去重复数据:DISTINCT  字段列表 二.where  查询条件 1.is null/is not null   判断空/非空 2.like  模糊比较字符串 1-通配符 1>%任意数量字符 2>_单个字符 2-用法 1>like‘%条件’ 2>like‘条件%’ 3>like‘%条件%’

SQL入门-DQL数据查询语言--select

1.help select mysql> help select Name: 'SELECT' Description: Syntax: SELECT [ALL | DISTINCT | DISTINCTROW ] [HIGH_PRIORITY] [STRAIGHT_JOIN] [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT] [SQL_CACHE | SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS] selec

九:SQL之DQL数据查询语言多表操作

前言: 一:数据准备 员工表emp 和部门表 dept --分别创建部门和员工表,并实现一对多关系 DROP TABLE dept; CREATE TABLE `dept`( `d_id` INT(5) PRIMARY KEY AUTO_INCREMENT COMMENT '这是部门id主键自增长', `d_name` VARCHAR(30) NOT NULL UNIQUE COMMENT '这是部门名称唯一非空' ); CREATE TABLE `emp`( `e_id` INT PRIMAR

MySQL_基础_DQL数据查询语言

查询语法 语法: SELECT * | { [DISTINCT] column | expression [alias], ... } FROM table [[connect_type] JION table2 ON connect_condition] [WHERE condition] [GROUP BY columns] [HAVING condition] [ORDER BY columns (ASC | DESC)] [LIMIT { [offset,] row_count | ro

30443数据查询语言DQL

5.4 SQL的数据查询功能 数据查询是数据库最常用的功能.在关系数据库中,查询操作是由SELECT语句来完成.其语法格式如下: SELECT column_expression FROM table_name | view_name[,table_name | view_name, [,…]] [IN foreign_TABLE] [WHERE... ] [GROUP BY... ] [HAVING... ] [ORDER BY…] [With Owneraccess Option] 其中,c