特简单(10分)

  • 主题发起人 主题发起人 ssh78
  • 开始时间 开始时间
S

ssh78

Unregistered / Unconfirmed
GUEST, unregistred user!
query1.sql.add(........);
我想从query1的结果集中再查找,取到query2中
因为query1的sql语句很长,不便引用,那么是否可以
直接引用query1.sql.text来代替很长的sql语句,写成:
query2.sql.add('select ....from (query1.sql.text) where....);

 
too easy!
s_tmpSQL: string;
s_tmpSQL := query1.sql.text;
query2.sql.add('select ....from '+ s_tmpSQL + ' where....);
 
不行!
应该这样query2.sql.add('select .... from ( '+''+'query.sql.text'+'+''+'where...);
好象是这样吧!
 
可以写成如下:
其中 select * from tbxxx 即位 query1.sql.text:
query2.sql.add('select * from (select * from tbxxx ) ');
 
那么,像这样做下去,sql语句可以无限嵌套对么?
 
我就是想用一个字符串之类的东西代替长的query1.sql.text.
penkerlove,confidentbb你们可能没明白我的意思。
Fanny501:我要是这样呢?
strquery1:string;
strquery2:string;
strquery1:='select ....';
query1.sql.text:=strquery1;
query1.open;
strquery2:='select ...from'+strquery1+'where..';
qury2.sql.text:=strquery2;
query2.open;
为什么会出错呢?是不是strquery2:='select ...from'+strquery1+'where..';这一句出错啦?
 
sorry~!我看错了! 重写!
s_tmpSQL: string;
s_new_Condition: string;

s_tmpSQL := query1.sql.text;
s_new_Condition := **** (例如: and Fields = ???)

query2.sql.add(s_tmpSQL + s_new_Condition);

试过,没有问题!前提是你的新的 s_new_Condition 别写错
 
可是我想在from或where里嵌套啊,并不是and fields呀
请帮我看看楼上的那一段代码,哪里写错了?
改成strquery2:='select ...from'+'('+strquery1+')'+'where..',也报错:
Invalid use of keyword.Token: select
 
我也试试
 
后退
顶部