祝愿大家身体健康!

 站点注册  找回密码
 站点注册

QQ登录

只需一步,快速开始

查看: 4648|回复: 3

看看这个语句错哪了?(急)

[复制链接]

看看这个语句错哪了?(急)

[复制链接]
boy0704

主题

0

回帖

3

积分

新手上路

积分
3
贡献
在线时间
小时
2007-4-25 16:25:26 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?站点注册

×

 strSql = "select * from (" +strSql+ ") as A where A.FSSJ >= '"+strfssjQ+"'";

运行后出现debug Database:

select * from (select S.FSSJ,S.YWDM,S.CONTENT,F.CLBZ,F.WGFSSJ,S.ID,F.MSJH,D.NSRSBH,Q.MC,S.CZYBM from WG_PLFSSJTEMP_CLONE S,WG_PLFSSJFJTEMP_CLONE F,XT_SJQYDY D,YW_QYXX Q where S.ID = F.SJ_ID and F.MSJH = D.SJH and D.NSRSBH=Q.NSRSBH  and (S.CZYBM in (select CZYDM from YW_CZYXX where  SWJGDM = '') or S.CZYBM like '%自动发送程序%')) as A where A.FSSJ >= '2005-04-24 13:31:15' and A.FSSJ <= '2007-04-25 13:31:15' order by A.ID

运行不过去~~错误:as附近有错。

哪个高手给看看哈~~

共享共进共赢Sharing And Win-win Results
SYBASEBBS - 免责申明1、欢迎访问“SYBASEBBS.COM”,本文内容及相关资源来源于网络,版权归版权方所有!本站原创内容版权归本站所有,请勿转载!
2、本文内容仅代表作者观点,不代表本站立场,作者自负,本站资源仅供学习研究,请勿非法使用,否则后果自负!请下载后24小时内删除!
3、本文内容,包括但不限于源码、文字、图片等,仅供参考。本站不对其安全性,正确性等作出保证。但本站会尽量审核会员发表的内容。
4、如本帖侵犯到任何版权问题,请立即告知本站 ,本站将及时删除并致以最深的歉意!客服邮箱:admin@sybasebbs.com
alan77

主题

0

回帖

2

积分

新手上路

积分
2
贡献
在线时间
小时
2007-4-27 06:31:33 | 显示全部楼层

strSql = "select * from (" +strSql+ ") as A where A.FSSJ >= '"+strfssjQ+"'";

 table_name can not use  (" +strSql+ ")

[此贴子已经被作者于2007-4-27 6:43:10编辑过]
共享共进共赢Sharing And Win-win Results
boy0704 楼主

主题

0

回帖

3

积分

新手上路

积分
3
贡献
在线时间
小时
2007-4-27 09:27:41 | 显示全部楼层

虚拟表

 strSql = "select * from (" +strSql+ ") as A where A.FSSJ >= '"+strfssjQ+"'";

我的意思是做一个嵌套,(" +strSql+ ") 是构成一个虚拟表。由于业务需要,所以只能采用这样的方法。

共享共进共赢Sharing And Win-win Results
alan77

主题

0

回帖

2

积分

新手上路

积分
2
贡献
在线时间
小时
2007-4-27 13:32:06 | 显示全部楼层

table_name can not use  (" +strSql+ ") --> strSql 不能是 column data
     

strSql = "select * from (" +strSql+ ") as A where A.FSSJ >= '"+strfssjQ+"'";
     

我会写成
     

strSql = 'select * from '+"'"+strSql+"'"+' as A where A.FSSJ >= '+"'"+strfssjQ+"'";

strSql 当然就是 table_name

不可以是
     
(select S.FSSJ,S.YWDM,S.CONTENT,F.CLBZ,F.WGFSSJ,S.ID,F.MSJH,D.NSRSBH,Q.MC,S.CZYBM from WG_PLFSSJTEMP_CLONE S,WG_PLFSSJFJTEMP_CLONE F,XT_SJQYDY D,YW_QYXX Q where S.ID = F.SJ_ID and F.MSJH = D.SJH and D.NSRSBH=Q.NSRSBH  and (S.CZYBM in (select CZYDM from YW_CZYXX where  SWJGDM = '') or S.CZYBM like '%自动发送程序%'))     

或许你可以在数据库内建立一个temporary table,再将上方sql insert 进去在用 temporary table 前记得 commit; 将里面值清空

此种table多数用于处理数据统计,,每个client 端可以将要统计数据丢内此table内做暂时计算(很多报表会用到),它也像是虚拟table,特别是每个client端都只会看到自己的,不会有别人的数据,也就是每个 client 端这个table 值都是不一样的,许多其他中大型数据库也是这几年才有这种tablesybase很早前就有

或者可以试做个view, 我相信不难做到

[此贴子已经被作者于2007-4-28 11:14:46编辑过]
共享共进共赢Sharing And Win-win Results
您需要登录后才可以回帖 登录 | 站点注册

本版积分规则

免责声明:
本站所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:Admin@SybaseBbs.com

QQ|Archiver|PowerBuilder(PB)BBS社区 ( 鲁ICP备2021027222号-1 )

GMT+8, 2024-5-15 01:12 , Processed in 0.070150 second(s), 9 queries , MemCached On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表