SQL查询2个表

来源:百度知道 编辑:UC知道 时间:2024/06/12 04:24:52
我有2个表,z_qtykjh和z_qtsqzf
z_qtykjh表里有bmdm和bz字段
z_qtsqzf表里有djh和yt字段
我想同时查询,把这4个字段同时显示.
注:试过可数据重复.
同一个数据库的2个表,我试过用语句查,可查出的数据都是重复的,谁能帮我写出正确有语句

2个表有联系的,z_qtsqzf就是通过提取z_qtykjh计划单据生成的支付单据.我也用触发器把z_ykjh里的bmdm字段的内容触发到z_qtsqzf里的yt字段的原有内容前面.
原来写的语句和"弓gong "说的一样

求完整的语句,请高手帮忙

你的语句是这样的吧?SELECT bmdm,bz,djh,bz FROM z_qtykjh,z_qtsqzf;你如果是直接将2个表连接起来的话是自然连接,这样的话出来的数据是2个表中字段的乘积,当然会有重合数据,所以要想不重复的话必须要找到2个表连接点,也就是相同的字段,加WHERE进行约束,就你的这个2个表是没有办法不重复的

显示结集是?

如果两个表没有关系,是会重复的。。
如果按照记录顺序显示。。
如:
SQL2000:
select * ,ID=identity(int,1,1) into #1 from z_qtykjh
select * ,ID=identity(int,1,1) into #2 from z_qtsqzf

select * from #1 a join #2 b on a.ID=b.ID

SQL2005用row_number

首先你这两个表有没有关系,如果没有关系,那你查询这两个表也代表不了什么意思。如果这两个表有关系,如z_qtykjh表中有某字段与z_qtsqzf表中某字段相关联,这样可以进行联合查询,假设z_qtykjh表ID与z_qtsqzf表ID存在一对多的关系,可以这样写:
select a.bmdm,a.bz,b.djh,b.yt from z_qtykjh a,z_qtsqzf b where a.id=b.id

请提供你两个表是否有关系,是否有基础表

就你那样说明,表关系还不是很明确,你要说明表的主键,外键这种关系。但是在你现在的说法上看,本来有的关系已经不存在了,你把关系字段加载另表字段内容前面了,难道你想用like来匹配查询吗?

-------------多表连接查询--------
--格式:
select 目标列
from 表1
[连接类型] join 表2 on 连接条件
[连接类型] join 表3 on 连接条件
--连接类型
内连接: join
左外连接: LEFT JOIN