表1
a b c
c01 b02 231
c02 b03 342
c03 b03 321表2
a b d
c01 b02 0.33
c03 b03 0.44如何得到结果集x y z p
c01 b02 231 0.33
c02 b03 342 null
c03 b03 321 0.44也就是表1字段 a,b 在表2中有数据,取表2 d字段,否则取空各位大大,帮帮忙,新人想的头晕
a b c
c01 b02 231
c02 b03 342
c03 b03 321表2
a b d
c01 b02 0.33
c03 b03 0.44如何得到结果集x y z p
c01 b02 231 0.33
c02 b03 342 null
c03 b03 321 0.44也就是表1字段 a,b 在表2中有数据,取表2 d字段,否则取空各位大大,帮帮忙,新人想的头晕
解决方案 »
- sql server 2005 express 开发的数据库 在 企业版里面怎么附加 出错了?
- 关于配置数据源的问题
- 这个问题怎么解决
- 如何用SQL查询分析器通过ODBC或直接打开CSV文件?
- 文件组 'PRIMARY' 已满 是什么意思?
- 如何在在数据库中读取同一内容不同时间的数据?
- sql 读取表数据插入其它多个表
- 100.000000分问大侠——怎么把优化的sql语句解析成很简单的select ... from ... where ...形式?
- 大侠们,两个数据库中的表能不能用一条sql语句关联起来??
- 怎样动态地指定DBCHART的datasource中的dataset???
- 1万个表可以用存储过程同时查询吗?
- 请问SQL Server 2000数据库,数据怎么可以做报表
(
a VARCHAR(100),
b VARCHAR(100),
c VARCHAR(100)
)
INSERT #A
select 'c01', 'b02', '231' union all
select 'c02', 'b03', '342' union all
select 'c03', 'b03', '321'
CREATE TABLE #B
(
a VARCHAR(100),
b VARCHAR(100),
d DECIMAL(10, 2)
)
INSERT #B
SELECT 'c01', 'b02', 0.33 UNION ALL
SELECT 'c03', 'b03', 0.44
--SQL
--#1
SELECT x=a.a, y=a.b, z=a.c, p=b.d FROM #A a LEFT JOIN #B b ON a.a = b.a AND a.b = b.b
--#2
SELECT x=a.a, y=a.b, z=a.c, p=b.d FROM #A a
OUTER APPLY
(SELECT d FROM #B WHERE a = a.a AND b = a.b) b
--#3
SELECT x=a.a, y=a.b, z=a.c,
p = (SELECT TOP(1) d FROM #B WHERE a = a.a AND b = a.b)
FROM #A a
select
a.a as x,
a.b as y,
c as z,
d as p
from 表1 a
left join 表2 b
on a.a=b.a and a.b=b.b
select a.a a.b a.c,b.d
from 表1 a left join 表2 b on a.a=b.a and a.b = b.b
on 表1.a=表2.a and 表1.b=表2.b[/size]
a.a as x,
a.b as y,
c as z,
d as p
from 表1 a
left join 表2 b
on a.a=b.a and a.b=b.b
select t1.*,t2.d from t1 left join t2 on t1.a=t2.a and t1.b=t2.b
left join
inner join
right join
(
a VARCHAR(100),
b VARCHAR(100),
c VARCHAR(100)
)
INSERT A
select 'c01', 'b02', '231' union all
select 'c02', 'b03', '342' union all
select 'c03', 'b03', '321'
CREATE TABLE B
(
a VARCHAR(100),
b VARCHAR(100),
d DECIMAL(10, 2)
)
INSERT B
SELECT 'c01', 'b02', 0.33 UNION ALL
SELECT 'c03', 'b03', 0.44SELECT a.a AS x,a.b AS y ,a.c AS z ,b.d
FROM a LEFT JOIN b ON a.a=b.a AND a.b=b.b