SQL 连接 表,取副表的第一条数据
2015-09-10 15:22
393 查看
两个表是一(A表)对多(B表)的关系,join的时候,B表只对应显示第一条数据(某些条件)。sql该如何写?
解答:
获取所有字段:
表A Aid title days 1 清远二天游 2 2 东莞一天游 1 3 深圳小梅沙二天 2 表B Bid BAid price 1 1 5220 2 1 3330 3 1 200 4 1 300 5 2 46546 6 2 555 7 2 55 8 2 5552 9 3 333 10 3 3330 11 3 444 12 3 444 13 3 4444 2个表通过通过Aid=Baid连接 期待的结果: a.aid b.baid b.bid a.title a.days b.price 1 1 1 清远二天游 2 5220 2 2 5 东莞一天游 1 46546 3 3 9 深圳小梅沙二天 2 333 aid内容相同的数据只显示一条。
解答:
select a.aid,a.title,a.days,b.price from 表A a,(select min(bid) as bid, BAid,min(price) as price from 表B group by BAid) b where a.aid=b.baid
获取所有字段:
select a.*,b.* from 表A a,表B b where a.aid=b.baid and b.bid in (select min(bid) as bid from 表B group by Baid)
相关文章推荐
- SQL中的三值逻辑
- SQL Server 作业批量停止
- 结束SQL阻塞的进程
- 动态生成SQL Server视图作业
- SQL Server 语句操纵数据库
- SQL(结构化查询语句)
- oracle sql日期比较
- linux快速部署mysql服务器
- sql 存储过程分页
- 在WINXP系统上安装SQL Server企业版的方法
- 通过批处理调用SQL的方法(osql)
- SQL Server 存储过程的分页
- ASP程序与SQL存储过程结合使用详解
- SQL SERVER编写存储过程小工具
- 防御SQL注入攻击时需要注意的一个问题
- PostgreSQL教程(十九):SQL语言函数
- SQL Server复制需要有实际的服务器名称才能连接到服务器
- SQL Server 2000向SQL Server 2008 R2推送数据图文教程