???会者不难,帮我看看这条SQL语句???

powersite 2004-08-24 10:29:01
主从表,
欲用一条语句,取出主表记录内容及相对于该主表记录时,从表的记录数量,在MS SQL SERVER中,可以这样:
select m.*,d.cc from tab_reportmain m,(select f_reportno,count(*) as cc from tab_reportdata group by f_reportno) d where m.f_no=d.f_reportno
但该语句在SYBASE中不能执行,
>>(select f_reportno,count(*) as cc from tab_reportdata group by f_reportno) d
上面这条语句好像就有问题了。

刚刚接触SYBASE,
很不熟悉,
请熟悉的朋友帮我看看这条语句,
不胜感激!
...全文
121 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hkzhou 2004-08-27
  • 打赏
  • 举报
回复
是的
yujiang930 2004-08-27
  • 打赏
  • 举报
回复
同意楼上的说法,在syabse 12.5以前都不支持查询生成表。
select m.*,d.cc from tab_reportmain m,(select f_reportno,count(*) as cc from tab_reportdata group by f_reportno) d where m.f_no=d.f_reportno
这条语句只能是分布写,或者写成一个procedure.
fetch 2004-08-26
  • 打赏
  • 举报
回复
sybase好像不支持select * from (select tableNAME from table1)的写法吧。
powersite 2004-08-25
  • 打赏
  • 举报
回复
select m.*,cc.count(*) from tab_reportmain m,cc cc by f_reportno) d where m.f_no=cc.f_reportno

????
不完整吧?
chenyansong 2004-08-24
  • 打赏
  • 举报
回复
分做两步:
第一步计数:
select f_reportno,count(*) as cc from tab_reportdata group by f_reportno

第二步合并:
select m.*,cc.count(*) from tab_reportmain m,cc cc by f_reportno) d where m.f_no=cc.f_reportno

中间注意字段的书写!

2,596

社区成员

发帖
与我相关
我的任务
社区描述
Sybase相关技术讨论区
社区管理员
  • Sybase社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧