LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

SQL一对多表关联查询查出一对另一表的第一行

admin
2012年1月13日 16:4 本文热度 2753
select * from table1 a where exists (select name from table2 where table2.name=a.name )
以上语句只取出符合条件table1的所有字段,如果想关联出table2的某一段,怎么写?谢谢


问题补充:Sonicscorpop,谢谢
table1与table2是一对多的关系,我只要取table2中一笔(日期最大的那笔)




感觉楼主的语句不用写成这样诡异的,你可以试试下面的语句符不符合你的要求
select * from table1 a,table 2 b where a.name=b.name;
这样不就行了么??


可以给多一点信息么??具体你想返回什么呢??
是这样么?

table1符合的记录字段 table1所对应的很多table2
                      的中的一个记录 字段
**                              ++++++
**                              ++++++
**                              ++++++
**                              ++++++


如果是这样的话,table2应该是存储有关交易的信息的吧,那么应该有一个唯一标识的编号,类型为数值,越新的记录,编号越大,设这个编号为id 那么可以用以下方法,达到你想要的效果

select * from table1,table2 where table2.id in (
select max(id) from table2 group by name) and table1.name
=table2.name;

强烈建议不要使用日期字段作唯一标识,如果没有以上所说的id列,会麻烦许多


该文章在 2012/1/13 16:04:05 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved