如何在outystems中提前查询删除查询

时间:2015-09-25 23:20:27

标签: outsystems

我尝试使用高级查询编写删除查询。但是不要没有如何提前查询查询仍然我试过但我收到错误。请帮我如何用例子写查询。

我只想删除“EnvelopeHeader”实体中的所有数据。

I got following error

3 个答案:

答案 0 :(得分:1)

我不熟悉这个版本的SQL。但是,我的预感告诉我你需要将整个select语句包装在两个圆括号中。也许select语句应该只包含一列。

像这样的东西

DELETE FROM table
WHERE ID IN
( select EH_id FROM some_other_table)

答案 1 :(得分:1)

如果您正在使用

DELETE FROM table
WHERE table.column IN (...)

这意味着您的内部查询必须返回与table.column类型相同的值列表。

在您的情况下,您的内部查询:

  1. 选择一堆o列,并且只应选择一列
  2. 选择多列时,您需要使用逗号分隔要选择col1,col2
  3. 的列
  4. 您需要为内部查询指定FROM语句
  5. 应该是

    DELETE FROM {table}
    WHERE {table}.[column] in
    (SELECT {table}.[column] FROM {table} WHERE <condition>)
    

    另外请不要忘记,如果要使用参数,可以使用@param_name

    来引用它们。

答案 2 :(得分:0)

如果要删除该实体中的所有记录,只需使用

DELETE * FROM {EnvelopeHeader}