德尔福多查询条件可自由组合

发布于 科技 2024-08-21
14个回答
  1. 匿名用户2024-02-01

    就个人而言,这似乎不是什么大问题,您只需要检查生成的语句中的最后一个字符是否是逗号,如果是,请将其删除。

    示例如下:

    s1 := ''+''+''+''+''+''+''+;

    if s1[length(s1)]=',' thens1 := copy(s1,1,length(s1)-1);

    s2 := ''+''+''+''+''+''+''+;

    if s2[length(s2)]=',' thens2 := copy(s2,1,length(s2)-1);

    sql := 'select '+ s1 + ''+ '从表1 a、表2 b中分组'+ s2;

    顺便一提:

    if then

    没关系,不要使用 = true

  2. 匿名用户2024-01-31

    我不建议你这样做,SQL 语句最好为输出组装,例如:

    varstr string;

    str:='select ';

    组合查询的内容。

    if(beginstr:=str+'';end;

    str:=str+' where ';

    合并查询的条件。

    if(beginstr:=str+ '...'//.代表您填写字段。

    end;使用 ADO 查询。

    你这样写是没有问题的,而且调试起来也很方便,当然可以继续精简上面的**,就看你了!

  3. 匿名用户2024-01-30

    用于生成 SQL 语句本身的语句没有任何问题。

    参数没有默认值,通常表示数据库中没有这样的字段,我见过很多这样的问题。

    自行检查数据库中是否有名称'grbh'不是您错误地复制字段名称的字段名称。

  4. 匿名用户2024-01-29

    简单地说,如果它是一个 SQL 数据库。

    Delphi 使用 AdoQuery 和 DataSource 在 AdoQuery 中编写 SQL 语句。

    也就是说,无条件查询是从表中选择 *。

    加号条件是从表中选择 *,其中 。条件。

  5. 匿名用户2024-01-28

    你是什么意思? 是查询嵌套吗?

    with adoquery do

    beginclose;

    'select * from';

    下面是要追加的查询');

    open;end;

  6. 匿名用户2024-01-27

    对于 SQL 语句,它的 where 子句可以使用 n 个条件。 只要有需要。

  7. 匿名用户2024-01-26

    有什么条件吗?

    关键是SQL语句的组合!

  8. 匿名用户2024-01-25

    根据查询页面条件组合组件的选择,对SQL语句进行拼写,然后执行拼写的SQL语句。

  9. 匿名用户2024-01-24

    简单来说,就是使用嵌套的SQL语句进行查询。

    示例:select * from (select * from table1 where field1=0) where (field2>'abc') and (field3 like '%ok%')

  10. 匿名用户2024-01-23

    select a.序列号,a项目名称,A

    塔型,a基数,一个重量,b

    黑色零件加工,一个重量,b黑色零件加工为剩余黑色零件,c

    转换处理,a重量 - c表1 a中作为转换余数的转换处理

    左连接表 2 b 上的 a序列号 = b序列号:左联接表2 c上

    序列号 = c序列号 -- “黑色处理”和“转换处理”的查询结果中是否存在空? 如果存在 null,则比较复杂,需要添加 case whan 语句和 is null 判断。

  11. 匿名用户2024-01-22

    假设书名存储在字符串变量 bookname 中,作者存储在 author 中,出版商存储在 pub 中。

    假设数据库中的这些字段都是字符串,则只需根据上述变量的值组合查询语句即可。

    varsql: string;

    beginsql := 'select * from your_db where 1=1';使用常数真值条件 1=1 是为了方便编写后面的组合。

    if bookname <>'' then

    sql := sql + '和书名=''' + bookname + '''';

    if author <>'' then

    sql := sql + '和 Author=''' + author + '''';

    if pub <>'' then

    sql := sql + '和 Publisher=''' + pub + '''';

    条件组合完成后执行查询。

    = sql;

    end;

  12. 匿名用户2024-01-21

    您的意思是当前表有许多字段,但根据场合,仅使用某些表字段进行维护。 是否要从任意数量的字段动态生成 SQL 语句,以便操作任意数量的字段?

    我的想法:在查询所有表时。

    使用 adoquery 查询 select * from table name 获取所有字段。 然后,它显示在数据网格中,用户根据自己的喜好填写查询条件。 然后,我们基于一些查询构造了SQL条件查询语句。

    varwheresql:stirng;

    sql:string;

    beginfor i:=0 to -1 do

    beignif ( unassigned) and (<'' ) then

    beginsql := sql + ' and ' + '=' + quotedstr(

    end;end;

    wehresql := 'select * from '+表名+' where 1=1 ' + sql;

    end;关于插入:

    使用 AdoQuery 查询在 FROM 表名称 where 条件之后选择某些字段。

    然后,将基于此查询动态插入 SQL 语句。

    varsql:string;

    ins:string;

    runsql :stirng;

    for i:=0 to do

    beginsql := sql + ',';

    ins:= ins + quotedstr( ',';

    end;delete(sql,length(sql)-1,1);删除(ins,length(ins)-1,1); 同上。

    runsql = 'insert into '+表名+'(' + sql + ') values(' + ins + ')';

    这样,就可以根据查询动态推导出相应的SQL语句。

  13. 匿名用户2024-01-20

    不管你用什么控件连接数据库,查询语句都是SQL,这没有错,但是因为表没有SQL属性,所以还是需要使用AdoQuery控件来输入查询语句。

    也许可以直接用表实现,但我不会,请高指校正。

  14. 匿名用户2024-01-19

    输入 name='tom',然后将筛选的属性值设置为 true。

相关回答
9个回答2024-08-21

可以自由组合**的用户可以从以下堆栈中进行选择: >>>More

16个回答2024-08-21

你是老师,你不自己准备课程,你是来要教科书的! 严重蔑视你!

6个回答2024-08-21

父亲应该是BBAA,母亲应该是BBAA,那么孩子有蓝眼睛,没有耳垂是八分之一的概率。

21个回答2024-08-21

您好,主号在合约期内一定要用这个**,从号可以提现,只要保留主号,对预存的返还没有影响。 因为办理4G免费组合共享需要提前存入300元**,所以可以与网络签订一年的合同,预存按月退还,下个月起每月退还25元。 合同期内,所有会员号码必须处于正常使用状态,保险号码不能停止,如果合同终止或注销欠款账户,剩余预押金将不作为违约金退还。

2个回答2024-08-21

您好,您可以将存储过程或自定义函数用于此更复杂的查询。 这两种方法都可以使用变量和进程控制,适用于复杂的数据查询,并且有很多关于“SQL存储过程”的完整材料。