嗨,我已经用mysql编写了一个查询(有效),我想在oracle sql开发人员上执行,所以我正在尝试用pl / sql编写它



这是我试图复制的查询

SELECT (
CASE
WHEN City like '%Berlin' and CustomerName like '%kiste'
THEN "CORRECT"
ELSE "INCORRECT"
END) as Result, CustomerName, City
FROM Customers

基本上,这将显示一个新的'结果'列,如果值匹配将显示正确否则不正确。

如何在pl/sql中编写此脚本?因为我找不到case语句的直接等效。

您应该使用Oracle SQL,而不是PL/SQL, PL/SQL是内置在Oracle数据库中的编程语言。

您的查询不正确。您正在使用双引号的两个字符串字面量,这是不允许的SQL。MySQL允许在某些条件下通过。

因此,为了得到直接的查询,在Oracle和MySQL中,字符串使用单引号:

SELECT
CASE WHEN city LIKE '%Berlin' AND customername LIKE '%kiste'
THEN 'CORRECT'
ELSE 'INCORRECT'
END AS result,
customername,
city
FROM customers;

(我也删除了多余的括号和大写或小写一致通过写大写所有关键词。)

最新更新