关于Unknown column '***' in 'field list'其中一个问题

问题如下
在这里插入图片描述
但是我的表里面有这个字段
在这里插入图片描述
fabulous为int类型

用到``这个符号,然后不知道为什么自动换行2行如下
在这里插入图片描述
然后就查询出来了

### 回答1: 是的,Oracle中可以使用嵌套的CASE WHEN语句。以下是一个简单的例子: ``` SELECT CASE WHEN column1 = 'A' THEN CASE WHEN column2 = 'B' THEN 'Result 1' WHEN column2 = 'C' THEN 'Result 2' ELSE 'Unknown Result' END WHEN column1 = 'D' THEN CASE WHEN column2 = 'E' THEN 'Result 3' WHEN column2 = 'F' THEN 'Result 4' ELSE 'Unknown Result' END ELSE 'Unknown Result' END AS Result FROM my_table; ``` 在上面的示例中,我们使用了两个嵌套的CASE WHEN语句来生成结果。内部CASE WHEN语句用于根据不同的条件生成不同的结果,而外部CASE WHEN语句用于根据第一个列的值选择适当的内部CASE WHEN语句。 ### 回答2: 在Oracle中,可以使用嵌套的CASE WHEN语句,即在一个CASE WHEN语句的THEN或ELSE子句中再嵌套另一个CASE WHEN语句。这种嵌套的CASE WHEN语句可以在一个CASE WHEN语句的THEN或ELSE子句中根据条件再次进行判断。 嵌套的CASE WHEN语句通常用于复杂的条件判断,可以根据多个条件的组合情况进行逻辑判断和处理。通过嵌套的CASE WHEN语句,可以构建出更加灵活和复杂的条件判断逻辑。 一个典型的例子是,在一个CASE WHEN语句的THEN或ELSE子句中,根据满足的条件再次进行判断。比如可以使用嵌套的CASE WHEN语句来判断学生成绩的等级,如果成绩在90分以上,则视为优秀,如果在80-89分之间,则视为良好,如果在70-79分之间,则视为中等,如果低于70分,则视为不及格。 示例代码如下: SELECT CASE WHEN score >= 90 THEN '优秀' WHEN score >= 80 AND score < 90 THEN '良好' WHEN score >= 70 AND score < 80 THEN '中等' ELSE '不及格' END AS grade FROM student; 通过嵌套的CASE WHEN语句,在第二个条件判断中,可以根据分数的范围再次进行判断,从而将学生的成绩划分为不同的等级。如此可以灵活地处理各种条件判断的逻辑。 ### 回答3: 在Oracle中,是可以在一个嵌套的`CASE WHEN`语句中再嵌套另一个`CASE WHEN`语句的。嵌套`CASE WHEN`语句的使用可以根据不同的条件集合来实现更复杂的逻辑判断和输出结果。 以下是示例代码: ``` SELECT CASE WHEN column1 = 'A' THEN CASE WHEN column2 = 'X' THEN 'Result 1' WHEN column2 = 'Y' THEN 'Result 2' ELSE 'Other Result' END WHEN column1 = 'B' THEN CASE WHEN column2 = 'X' THEN 'Result 3' WHEN column2 = 'Y' THEN 'Result 4' ELSE 'Other Result' END ELSE 'Other Result' END AS Output FROM table_name; ``` 上述示例中,根据column1和column2的值分别执行不同的逻辑判断并返回相应的结果。根据实际需要,在嵌套的`CASE WHEN`语句中继续嵌套更多的`CASE WHEN`语句来实现更复杂的条件判断和结果输出。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值