20141104--SQL连接查询,联合查询

 1 ---------------------------连接查询--------------------------------
 2 --横向连接查询
 3 --可以将子查询放在from之前,用来替换显示出来的信息
 4 select name as 名字,sex,age,(select name from bumen where bumen.code=biao2.bumen)部门,(select ceo from bumen where bumen.code=biao2.bumen)as ceo from biao2
 5 --连接查询 两个表必须有联系。
 6 --如果两个表有相同的列名,则需要明确是哪个表的列,格式:表名.列名
 7 --连接查询较为简便的方法,
 8 select biao2.name,sex,age,bumen.name,ceo from biao2,bumen where biao2.bumen=bumen.code
 9 --join on 另一种写法 join(加入) on(在..上) 格式:from 表名1 join 表名2 on 两个表的列关系
10 select biao2.name,sex,age,bumen.name,ceo from biao2 join bumen on biao2.bumen=bumen.code
11 --用 join on 连接两个表的中间三列(biao2的name,sex,age 和 bumen的name,zhineng,ceo)
12 select biao2.name,sex,age,bumen.name,zhineng,ceo from biao2
13 join bumen on biao2.bumen=bumen.code
14 ----------join on 之前的三个关键词-------------
15 --如果两个表没有主外键关系,不在join前加 关键词 的时候只显示两个表有联系的信息
16 --full
17 --在join前加 full 可以显示两个表所有的信息(包括两个表中没有联系的信息)
18 select biao2.name,sex,age,bumen.name,zhineng,ceo from biao2
19 full join bumen on biao2.bumen=bumen.code
20 --left
21 --在join前加 left 只显示左边表的全部信息(包括没有关系的信息)并按左边表排序。
22 select biao2.name,sex,age,bumen.name,zhineng,ceo from biao2
23 left join bumen on biao2.bumen=bumen.code
24 --right
25 --在join前加 right 只显示右边表的全部信息(包括没有关系的信息)并按右边表排序。
26 select biao2.name,sex,age,bumen.name,zhineng,ceo from biao2
27 right join bumen on biao2.bumen=bumen.code
28
29 -------------------------联合查询---------------------------
30 --纵向联合查询,
31 --union  两个表的列数据类型必须对应一样才可以连接起来。具备自动去重的功能
32 --在一个表中
33 select *from biao2 where age>=39
34 union
35 select *from biao2 where age<=25
36 --在两个表中
37 select name,bumen from biao2
38 union
39 select ceo,code from bumen 
时间: 2024-10-10 20:06:55

20141104--SQL连接查询,联合查询的相关文章

MySql学习 - 查询/子查询/连接查询/联合查询

数据库查询 设定两张数据库表 第一个表格user包含: user_id username age sex 1 Alps1992 22 man 第二个表格toy包含 user_id toyname 1 OnePiece 普通查询: 查询关键字: AS, SUM, DESC, GROUP BY, ORDER BY, AVG, MIN, MAX, COUNT, LIMIT; 关键字查询例子 select * from user as u order by age limit 5; // as 用来做别

MySQL数据库8 -子查询,联合查询

一 使用IN关键字的子查询 问题: 查询游戏类型是'棋牌类' 的游戏的分数信息 - 游戏分数表中并未包含游戏类型信息 思路一:采用链接查询 思路二: 分两步进行,首先找到所以'棋牌类'游戏的编号,再以这一组编号为查询依据完成查询 select * from scores where gno in (select gno from games where gtype ='棋牌') 例:查询没有参与5号游戏的玩家QQ select user_qq from users where user_qq n

MySQL的查询,子查询,联结查询,联合查询

一.mysql查询的五种子句where(条件查询).having(筛选).group by(分组).order by(排序).limit(限制结果数) 二.子查询1.where 子查询SELECT * FROM tb1 WHERE cat_id IN (SELECT max(id) FROM tb2 GROUP BY cat_id); 2.from 子查询SELECT t2_id FROM (SELECT t2_id FROM tb2 ORDER BY t2_id DESC); 3.exists

SQL多表联合查询

通过连接运算符可以实现多个表查询.连接是关系数据库模型的主要特点,也是它区别于其它类型数据库管理系统的一个标志. 在关系数 据库管理系统中,表建立时各数据之间的关系不必确定,常把一个实体的所有信息存放在一个表中.当检索数据时,通过连接操作查询出存放在多个表中的不同实体 的信息.连接操作给用户带来很大的灵活性,他们可以在任何时候增加新的数据类型.为不同实体创建新的表,尔后通过连接进行查询. 连接可以在SELECT 语句的FROM子句或WHERE子句中建立,似是而非在FROM子句中指出连接时有助于将

SQL多表联合查询(LEFT JOIN)条件差异

查询A: select a.*,b.* into Bus605115_ON_Where_And --(642 行受影响) from PositionN a left join szt b on b.[fQCBH]=a.fBusNo where fdealtime between fDInTime and fDInTimeN and fbusno=605115 查询B: select a.*,b.* into Bus605115_ON_And_Where --(835 行受影响) from Pos

sql两表联合查询

SELECT yt_fault_componentId FROM yt_fault_component a join yt_fault_assembly b on a.yt_fault_assembly=b.yt_fault_assemblyId where a.yt_code='' and b.yt_code=''

SQL 连接操作 及 查询分析

sql注入(二)联合查询注入过程

注入步骤 找注入点且得到闭合字符 判断数据库类型 猜解列数,得到显示位 得到基本信息(如:数据库名.数据库版本.当前数据库名等) 得到数据库名 得到表名 得到列名 得到列值 1 1' order by 3 -- - 错误 2 1' order by 1 -- - 正确 3 1' order by 2 -- - 正确 (判断有几列,在这里有两列) 4 ? 5 ? 6 1' union select 1,2 -- - (查看回显位) 7 ? 8 1' union select user(),data

转:EntityFramework查询--联合查询(Join,GroupJoin)

首先我们先看一下Join public static IEnumerable<TResult> Join<TOuter, TInner, TKey, TResult>(this IEnumerable<TOuter> outer, IEnumerable<TInner> inner, Func<TOuter, TKey> outerKeySelector, Func<TInner, TKey> innerKeySelector, Fu

EntityFramework查询--联合查询(Join,GroupJoin)

首先我们先看一下Join public static IEnumerable<TResult> Join<TOuter, TInner, TKey, TResult>(this IEnumerable<TOuter> outer, IEnumerable<TInner> inner, Func<TOuter, TKey> outerKeySelector, Func<TInner, TKey> innerKeySelector, Fu