sql的基本语句
SQL中的inner join, left join, right join, full join
创建两个测试表并且输入相关值
create table test_a(
aid int,
aNum varchar(255)
);
create table test_b(
bid int,
bNum varchar(255)
);
insert into test_a(aid, aNum)
values
(1, 'a2015001'),
(2, 'a2015002'),
(3, 'a2015003'),
(4, 'a2015004'),
(5, 'a2015005');
insert into test_b(bid, bNum)
values
(1, 'b160200p'),
(2, 'b2015002b'),
(3, 'b2015003b'),
(4, 'b2015004b'),
(8, 'b2015008');
inner join
等值连接, 只返回两个表中连接字段相等的行
select * from test_a inner join test_b on aid = bid;
结果表只返回两个表中字段相等的行
left join
左连接 返回包括左表中的所有记录和右表中联结字段相等的记录
select * from test_a left join test_b on aid = bid;
返回包括左表中的所有记录和右表中联结字段相等的记录,没值用null填充
left join是以A表的记录为基础的,A可以看成左表,B可以看成右表,left join是以左表为准的.
right join
右联接 返回包括右表中的所有记录和左表中联结字段相等的记录
select * from test_a right join test_b on aid = bid;
返回包括右表中的所有记录和左表中联结字段相等的记录,没值用null填充
和left join的结果刚好相反,这次是以右表(B)为基础的,A表不足的地方用NULL填充.
full join
全联接 只要其中某个表存在匹配,FULL JOIN 关键字就会返回行,相当于left join 和right join的并集
select * from test_a full join test_b on aid = bid;
返回两个表的所有记录
返回两个表的所有记录,没有的值用null补充
sql的基本语句的更多相关文章
- SQL高性能查询优化语句(总结)
SQL 高性能查询优化语句,一些经验总结 1.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where ...
- 如何判断一条sql(update,delete)语句是否执行成功
如何判断一条sql(update,delete)语句是否执行成功 catch (SQLException e) { } catch不到错误应该就成功了. ============== ...
- SQL数据库基本语句
SQL特点--> 1)综合统一.SQL是集数据定义.数据操作和数据控制于一体,语言峰峰统一,可独立完成数据库生命周期的所有活动. 2)高度非过程化.SQL语言是高度非过程化语言,当进行数据操作时 ...
- 利用 SQL Monitor 查看语句运行状态步骤
利用 SQL Monitor 查看语句运行状态步骤 1.确定语句被 SQL Monitor 监控 SQL> SELECT * FROM GV$SQL_MONITOR WHERE sql_id=' ...
- SQL SELECT INTO 语句
SQL SELECT INTO 语句可用于创建表的备份复件. SELECT INTO 语句 SELECT INTO 语句从一个表中选取数据,然后把数据插入另一个表中. SELECT INTO 语句常用 ...
- discuz 万能SQL查询调用语句写法
首先在最底层source\class\table写入底层安全调用文件例如:table_common_friendlink.php 代码: <?php /** * [Discuz!] (C)200 ...
- 将EXCEL中的列拼接成SQL insert插入语句
工作中经常需要将EXCEL文件中的数据导入到各种数据库,但是对于不熟悉数据库的人来说,如果直接使用命令执行导入,这无疑是一个难题,也是一个风险.这里我们直接在EXCEL文件中拼接成标准的SQL ins ...
- SQL 常用基础语句
1.SQL SELECT 语句 语法:SELECT 列名称 FROM 表名称 2.SQL SELECT DISTINCT 语句 语法:SELECT DISTINCT 列名 ...
- SQL 2008执行语句遇到内存不足(1)——error 701
原文:SQL 2008执行语句遇到内存不足(1)--error 701 转自:http://blogs.msdn.com/b/apgcdsd/archive/2011/01/17/sql-2008-e ...
- SQL 无限级分类语句
原文:SQL 无限级分类语句 原表数据为: 此处用到了with关键字,在程序中也可以用递归实现,但觉得还是没有一条sql方便 with tb (ID,Name,ParentID,Sort) as( s ...
随机推荐
- c++基础学习
1.输入输出函数(cout,cin) #include<iostream> int main() { using namespace std; cout<<"Come ...
- yum安装mysql
安装 CentOS7默认数据库是mariadb,配置等用着不习惯,因此决定改成mysql,但是CentOS7的yum源中默认好像是没有mysql的.为了解决这个问题,我们要先下载mysql的repo源 ...
- how2heap学习笔记
github源代码地址 这里只分析glibc2.25堆分配的特性,为了方便调试编译时使用 gcc -g -no-pie <input_file_name> -o <output_fi ...
- Linux命令行下编辑常用的快捷键
Linux命令行编辑快捷键: Ctrl+r 然后输入若干字符,开始向上搜索包含该字符的命令,继续按Ctrl+r,搜索上一条匹配的命令,按Ctrl+c或上下键退出. Ctrl+l 清屏 !num 执行命 ...
- 【原创】Linux基础之用户和组
1 添加.删除用户 # useradd $user# userdel $user 2 设置用户密码 # passwd $user /etc/passwd 3 查看$user的用户和组信息 # id $ ...
- centos + nginx + php-fpm +mysql的简单配置
安装前准备 安装约定(这个根据自己习惯,可自行修改) 1.软件源码包我都下载到/usr/local/src这个目录下 2.软件一般都编译安装到/usr/local这个目录下 安装基础库 yum -y ...
- springboot集成mybatis源码分析-启动加载mybatis过程(二)
1.springboot项目最核心的就是自动加载配置,该功能则依赖的是一个注解@SpringBootApplication中的@EnableAutoConfiguration 2.EnableAuto ...
- query string parameters 、 Form Data 、 Request Payload
微信小程序ajax向后台传递参数的时候总是报400错误 然后看了一下network 发现是query string parameters,但是我写的header如下 header:{ "Co ...
- Win下必备神器之Cmder
诚言,对于开发码字者,Mac和Linux果断要比Windows更贴心;但只要折腾下,Windows下也是有不少利器的.之前就有在Windows下效率必备软件一文中对此做了下记载:其虽没oh-my-zs ...
- 分享关于搭建高性能WEB服务器的一篇文章
这篇文章主要介绍了Centos5.4+Nginx-0.8.50+UWSGI-0.9.6.2+Django-1.2.3搭建高性能WEB服务器的相关资料,需要的朋友可以参考下(http://m.0813s ...