LibreOffice Base V5.3.2.2 - 相当于Access IIF
LibreOffice Base V5.3.2.2 - Equivalent to Access IIF
我是 Base 的新手,正在尝试转换一个简单的 MS Access 查询:
Box:IIF([Archive_Loc] like '**ox*','B')
我正在使用 casewhen("Archive_Loc" = '%ox%','B')
但我似乎无法弄清楚如果我可以使用 LIKE
而不是 =
如果 Archive_Loc
包含短语 ox.
如有任何建议,我们将不胜感激 - 谢谢
您似乎有 2 个问题:
- IIF 语法帮助
- 类似于 CASEWHEN() 函数。
首先,您确实有 SQL 操作可用,但您似乎在执行文本功能。
此外,您应该有一个过滤器导航器向导可能会有所帮助。
A1。语法为:
IF([boolean_field];"Yes";"No")
A2。喜欢的语法应该是:
IF([Archive_Loc] like '%ox%','B') --will show something containing "ox" in it.
规则:
For text, written in quotation marks (' '); "_" for a variable
character, "%" for an arbitrary number of variable characters
引用自网站下载自:http://www.libreoffice.org/get-help/documentation/
这里有 BASE 的在线帮助站点:https://help.libreoffice.org/Common/Database_1
您的问题的答案取决于所使用的数据库的具体 SQL 风格。换句话说,不同的数据库使用有些不同的 SQL 语法。所以首先要问你的是你用的是哪个数据库???
这里有一些选项:HSQLDB 1.8 是默认的内置数据库。 (注意:有一个 2.3 版本,但默认情况下 Base 不使用它。)您也可以选择 Firebird。至于我,大多数时候我更喜欢连接到 MariaDB(一个 MySQL 免费数据库引擎),因为它有其他可用的有用工具,如 HeidiSQL 和 phpmyadmin。
一旦你知道你正在使用哪个数据库,那么这里是一个 link 到 link 的列表,用于我前段时间第一次学习 Base 时整理的各种数据库文档: https://ask.libreoffice.org/en/question/80972/to-learn-libreoffice-base-are-there-introductions-or-tutorials/
请向下滚动到 "IMPORTANT DATABASE DOCUMENTATION"。
这不仅可以帮助您回答这个具体问题,而且有望为您提供宝贵的资源,让您自己回答更多问题。
HSLQDB 1.8 manual 是一本好书,虽然很难找到 link 到 ,我猜这可能是你的数据库使用.
希望对您有所帮助。
我最终解决了我的问题,方法是将 base 连接到我现有的 mysql 数据库并将查询直接设置为 运行 和 sql 以便它绕过解析器。
任务完成:-)
我是 Base 的新手,正在尝试转换一个简单的 MS Access 查询:
Box:IIF([Archive_Loc] like '**ox*','B')
我正在使用 casewhen("Archive_Loc" = '%ox%','B')
但我似乎无法弄清楚如果我可以使用 LIKE
而不是 =
如果 Archive_Loc
包含短语 ox.
如有任何建议,我们将不胜感激 - 谢谢
您似乎有 2 个问题:
- IIF 语法帮助
- 类似于 CASEWHEN() 函数。
首先,您确实有 SQL 操作可用,但您似乎在执行文本功能。
此外,您应该有一个过滤器导航器向导可能会有所帮助。
A1。语法为:
IF([boolean_field];"Yes";"No")
A2。喜欢的语法应该是:
IF([Archive_Loc] like '%ox%','B') --will show something containing "ox" in it.
规则:
For text, written in quotation marks (' '); "_" for a variable character, "%" for an arbitrary number of variable characters
引用自网站下载自:http://www.libreoffice.org/get-help/documentation/
这里有 BASE 的在线帮助站点:https://help.libreoffice.org/Common/Database_1
您的问题的答案取决于所使用的数据库的具体 SQL 风格。换句话说,不同的数据库使用有些不同的 SQL 语法。所以首先要问你的是你用的是哪个数据库???
这里有一些选项:HSQLDB 1.8 是默认的内置数据库。 (注意:有一个 2.3 版本,但默认情况下 Base 不使用它。)您也可以选择 Firebird。至于我,大多数时候我更喜欢连接到 MariaDB(一个 MySQL 免费数据库引擎),因为它有其他可用的有用工具,如 HeidiSQL 和 phpmyadmin。
一旦你知道你正在使用哪个数据库,那么这里是一个 link 到 link 的列表,用于我前段时间第一次学习 Base 时整理的各种数据库文档: https://ask.libreoffice.org/en/question/80972/to-learn-libreoffice-base-are-there-introductions-or-tutorials/
请向下滚动到 "IMPORTANT DATABASE DOCUMENTATION"。
这不仅可以帮助您回答这个具体问题,而且有望为您提供宝贵的资源,让您自己回答更多问题。
HSLQDB 1.8 manual 是一本好书,虽然很难找到 link 到 ,我猜这可能是你的数据库使用.
希望对您有所帮助。
我最终解决了我的问题,方法是将 base 连接到我现有的 mysql 数据库并将查询直接设置为 运行 和 sql 以便它绕过解析器。
任务完成:-)