【发布时间】:2021-07-13 23:05:21
【问题描述】:
以C#中执行的以下两条SQL语句为例。根据您使用的是MySQL 还是Oracle,它们会返回不同的值:
//MySQL / MariaDB:
1a. SELECT COUNT(*) FROM MYTABLE //returns long
2a. SELECT COUNT(*) > 0 FROM MYTABLE //returns int (1 if true, 0 if false)
//Oracle:
1b. SELECT COUNT(*) FROM MYTABLE //returns int
2b. SELECT COUNT(*) > 0 FROM MYTABLE //ORA-00923: FROM keyword not found where expected
我想知道是否有办法让语句 (2b) 与 Oracle 一起工作(选择一个布尔值,最好模仿 MySQL——如果为真,则为 0,如果为假,则为 0)。
我正在尝试避免使用特定于数据库的函数,例如 IF、IIF、IFNULL、CASE 等。我正在尝试编写数据库通用语句。
【问题讨论】:
标签: c# mysql sql oracle boolean