SQL之单表与多表查询
DML语句使用
source 路径 :把SQL脚本导入到数据库中
查询语句类型:【简单查询|多表查询|子查询】
投影:select 字段名,字段名 from 表名 where 条件 :作对比
选择:select * from 表名 where 条件 :选择显示莫一行
单表查询
在一个表中,某个字段中相同的数值只显示一次!
select distinct 字段名 from 表名;
from子句 :表,多个表,其他查询语句(select)
where子句:布尔关系表达式,操作符(<,>,>=,<=,=)
组合条件查询
符号: %:任意长度任意字符
_:任意单个字符
rlike/regexp:使用正则表达式
in :离散取值
order by 字段 (asc升序/desc降序):给查询出来的数据排序,(默认为升序)
and :和
or :或
not :非
between。。。and。。。:。。。与。。。。之间
select cid from xuehao where not cid >2;
关键字
select cid from xuehao where cid between 2 and 6;
关键字 cid在2与6之间(between:。。。与。。。之间)
select keming from kehao where keming like 'y%'
关键字 字段名 个字符
select keming from kehao where keming like '%k%';
字符中包含了k的字符串
select keming from kehao where keming rlike '^[ky].*$' ;
使用正则表达式 开头是k或y
select cid from kehao where cid in (1,2,5);
筛选出一个表中id的值为1,2,5
select * from xuehao order by cid
排序 根据cid
别名:select a.Name , b.Cname from students as a,courses as b where a.CID1=b.CID;
字段别名为a 字段别名为b 表别名为a 表别名是b 条件 表a的CID1=表b的CID
多表查询
连接方式
交叉连接:笛卡尔乘积
自然连接:将两张表上相同字段当中的的那个值逐一作比较,只将等值关系将它保留下来
外连接:
左外连接:左表 left join 右表 on 条件
右外连接:左表 right join 右表 on 条件
select s.Name,c.Cname from students as s lef t join courses as c on s.CID1=c.CID;
左表 别名 s 左外连接 右表 别名 c 连接条件
select s.Name,c.Cname from students as s right join courses as c on s.CID1=c.CID;
左表 别名 s 右外连接 右表 别名 c 连接条件
子连接:
比较操作中使用子查询,子查询只能返回单个值
in ():使用子查询
联合查询
union
(select Name,Age from students) union (select Tname,Age from tutors);
SQL之单表与多表查询的更多相关文章
- 将一个多表关联的条件查询中的多表通过 create select 转化成一张单表的sql、改为会话级别临时表 【我】
将一个多表关联的条件查询中的多表通过 create select 转化成一张单表的sql 将结果改为创建一个会话级别的临时表: -- 根据下面这两个sql CREATE TABLE revenu ...
- sql 单表distinct/多表group by查询去除重复记录
单表distinct 多表group by group by 必须放在 order by 和 limit之前,不然会报错 下面先来看看例子: table id name 1 a 2 b ...
- SQL Server利用RowNumber()内置函数与Over关键字实现通用分页存储过程(支持单表或多表结查集分页)
SQL Server利用RowNumber()内置函数与Over关键字实现通用分页存储过程,支持单表或多表结查集分页,存储过程如下: /******************/ --Author:梦在旅 ...
- sql server单表导入、导出
sql server单表导入.导出(通过CSV文件) 导出:直接打开查询分析器查询要导出表的信息(select * from 表),得到的结果全选,右键另存为 xxx.csv文件 (得到该表的所有 ...
- MySQL单表多字段模糊查询
今天工作时遇到一个功能问题:就是输入关键字搜索的字段不只一个字段,比如 我输入: 超天才 ,需要检索出 包含这个关键字的 name . company.job等多个字段.在网上查询了一会就找到了答案. ...
- SQL Server单表已700w+将普通表转换成分区表1
最近项目中,某个表数据量爆发时增长,单表已700w+,读写性能急剧下降,所以考虑加入分区表以解燃眉之急,后续还是要分表分库,当然这是后话.下面简要说一下将普通表转为分区表的步骤. 一.创建文件组 ...
- mysql数据库:mysql增删改、单表、多表及子查询
一.数据增删改 二.单表查询 三.正表达式匹配 四.多表查询 五.子查询 一..数据增删改 增加 insert [into] 表名[(可选字段名)] values(一堆值1),( ...
- SQL总结(二)连表查询
---恢复内容开始--- SQL总结(二)连表查询 连接查询包括合并.内连接.外连接和交叉连接,如果涉及多表查询,了解这些连接的特点很重要. 只有真正了解它们之间的区别,才能正确使用. 1.Union ...
- SQL语句汇总(终篇)—— 表联接与联接查询
上一篇博文说到相关子查询效率低下,那我们怎么能将不同表的信息一起查询出来呢?这就需要用到表联接. 和之前的UNION组合查询不同,UNION是将不同的表组合起来,也就是纵向联接,说白了就是竖着拼起来. ...
- SQL查询数据库信息, 数据库表名, 数据库表信息
SQL查询数据库信息, 数据库表名, 数据库表信息 ---------------------------------------------- -- 以下例子, 在sql_server 中可以直接运 ...
随机推荐
- 爬虫---lxml简单操作
前几篇写了一些Beautiful Soup的一些简单操作,也拿出来了一些实例进行实践,今天引入一个新的python库lxmt,lxmt也可以完成数据的爬取哦 什么是lxml lxml是python的一 ...
- Ambari 大数据集群管理
最近做了一个大数据项目,研究了下集群的搭建,现在将集群搭建整理的资料与大家分享一下!如有疑问可在评论区回复. 1前置配置 Centos7系统,每台系统都有java运行环境 全程使用root用户,避免安 ...
- day46_9_5前端(3)
一.调节长宽. 在css中可以对块级标签设置长和宽,但是对行内标签无效,其属性如下: 1.height:80px 高度. 2.width:80px 宽度. 二.字体属性. 设置一个标签中的字体.比如黑 ...
- 洛谷 P5595 【XR-4】歌唱比赛
洛谷 P5595 [XR-4]歌唱比赛 题目传送门 题目描述 小 X 参加了一场歌唱比赛. 经过一路鏖战,小 X 终于挺进了决赛,他的对手是小 Y. 这场歌唱比赛的冠军是由点赞数决定的,谁的点赞数高, ...
- C 函数与指针(function & pointer)
C 函数与指针(function & pointer) /* * function.c * 函数在C中的使用 * */ #include <stdio.h> int noswap( ...
- mac使用技巧和快捷键
mac快捷键 shift+command+delete 清除缓存 shift+command+. 查看隐藏文件 ctrl+空格 切换输入法 shift+option+F11/F12 精细调节声音 fn ...
- 补充: Nginx
1. 定义: Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器: 特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现 ...
- ASP.NET开发实战——(八)ASP.NET MVC 与数据库之MySQL
之前介绍了My Blog如何使用ADO.NET来访问SQL Server获取数据.本章将介绍如何使用My SQL来完成数据管理. 在使用My SQL之前需确保开发环境中安装了My SQL数据库和Con ...
- Luogu P3646 [APIO2015]巴厘岛的雕塑
深夜写题解系列,话说这题暑假的时候就在LOJ上做掉了,然后今天看到Luogu上有就去交了一下,发现没写过题解,赶紧来补一下 说句题外话APIO2015的题目好水啊 首先考虑按位取或的过程,很显然要从二 ...
- javascript 写一个 map方法
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...