A表 a1,a2,a3 主键a1
B表a1,b2,b3 主键a1
问:我现在要查出B表中b2的10条记录然后再与A表中a2组成一条记录,请问怎写SQL 语句?谢谢
B表a1,b2,b3 主键a1
问:我现在要查出B表中b2的10条记录然后再与A表中a2组成一条记录,请问怎写SQL 语句?谢谢
解决方案 »
- 新手求助
- 我在eclips里 写 List l1 = new LinkedList();为什么错误啊?
- 帮我看看我的扫雷小程序问题
- 如何才能使JLabel的文字自左向右移动,然后到了窗体的边缘,又从右向左移动,好象横向滚动的效果?在线等
- 新手问路:无法从静态上下文中引用非静态,程序
- 目前主流的桌面应用的编写语言
- 如何将JBuilder5内嵌的J2SDK1.3导入1.4版本?
- zlyperson(rookie)近来领分!
- 我想实现通过网络传送文件
- 一个基本概念问题:静态函数只能调用静态方法,类的成员函数也是静态的吗?
- fireActionPerformed(ActionEvent event)方法?
- RMI的服务端怎样获取访问端的IP地址?
子查询(select top 10 B.b2 from B)是在B中选择10条记录(因为LZ没有说明选择10条记录的具体条件,所以我用的是top 10),主查询就是在把A表中的b2与B中那合要求的十条记录的联合...
select _B.b2,A.a2 from A,(select top 10 B.b2 from B) as _B where A.a1=B.a1OPEN curDECLARE @b2 varchar(30)
DECLARE @a2 varchar(30)
DECLARE @resu varchar(1000)FETCH NEXT FROM cur INTO @b2,@a2WHILE @@FETCH_STATUS=0
BEGIN
set @resu=@resu+' | '+@b2+@a2
FETCH NEXT FROM cur INTO @b2,@a2
END
DECLARE cur CURSOR FOR
select _B.b2,A.a2 from A,(select top 10 B.b2 from B) as _B where A.a1=B.a1OPEN curDECLARE @b2 varchar(30)
DECLARE @a2 varchar(30)
DECLARE @resu varchar(1000)FETCH NEXT FROM cur INTO @b2,@a2SET @resu=''WHILE @@FETCH_STATUS=0
BEGIN
set @resu=@resu+' | '+@b2+';'+@a2
FETCH NEXT FROM cur INTO @b2,@a2
END
CLOSE cur
DEALLOCATE cur--------------------------------------------------
测试数据及结果:
数据:
6 Meat/Poultry
7 Produce
8 Seafood 结果:
| 6,Meat/Poultry | 7,Produce | 8,Seafood