【问题标题】:OpenOffice Base LIKE with columnsOpenOffice Base LIKE 与列
【发布时间】:2011-11-10 16:48:19
【问题描述】:

我有一个 Open Office 数据库。我想在同一个表的两列之间使用带有“%”标记的 LIKE 运算符:

SELECT * FROM "table1" WHERE UPPER ( "table1"."a" ) LIKE UPPER ('%' + "table1"."b" + '%' )

但它不起作用,虽然

SELECT * FROM "table1" WHERE UPPER ( "table1"."a" ) LIKE UPPER ("table1"."b")

有效。我的语法有什么问题?

【问题讨论】:

    标签: sql database openoffice.org openoffice-base


    【解决方案1】:

    在 % 之后和表格之前的前面缺少一个 +。

    SELECT [insert your fields here] FROM "table1" WHERE UPPER ( "table1"."a" ) LIKE UPPER ('%' + "table1"."b" + '%' )
    

    更新

    SELECT [insert your fields here] FROM "table1" WHERE UPPER ( "table1"."a" ) LIKE '%' + UPPER("table1"."b") + '%' 
    

    我假设 A 和 B 都是相同的数据类型。

    我假设 + 是 openoffice 中的字符串 concat。其他可能的值为 ||或 &

    【讨论】:

    • 抱歉,我的代码复制错了。您的代码(这是我的原始代码)不起作用。我会编辑我的帖子
    • 感谢您的帮助!这样可行。 (但我不明白为什么我的代码不起作用……OpenOffice 很混乱)
    • 希望我能告诉你。我不太了解开放式办公数据库。我只知道在尝试排除故障时要简化操作。
    • 永远不要使用 *,总是定义字段。
    • 字符串 concat 在 LibreOffice Base 中为 ||
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-31
    • 2016-06-12
    相关资源
    最近更新 更多