case when [subject] in ("B高峰起步价","B高峰里程费","B高峰时长费","C高峰起步价","C高峰里程费","C高峰时长费") and substr([现期b_time],1,2) <> substr([基期b_time],1,2) then concat([基期b_time],"-",[基期e_time],"--->",[现期b_time],"-",[现期e_time]) when [subject] in ("B高峰起步价","B高峰里程费","B高峰时长费","C高峰起步价","C高峰里程费","C高峰时长费") and substr([现期e_time],1,2) <> substr([基期e_time],1,2) then concat([基期b_time],"-",[基期e_time],"--->",[现期b_time],"-",[现期e_time]) when [subject] in ("B超公里费","C超公里费") and [现期b_time] <> [基期b_time] then concat(round(100*([现期b_time]/[基期b_time]-1),2),"%") end 这段代码报错,帮我修改一下
时间: 2023-07-21 09:01:18 浏览: 25
这段代码存在重复的部分,让我来帮您进行修改:
```sql
CASE
WHEN [subject] IN ("B高峰起步价", "B高峰里程费", "B高峰时长费", "C高峰起步价", "C高峰里程费", "C高峰时长费")
AND SUBSTR([现期b_time], 1, 2) <> SUBSTR([基期b_time], 1, 2)
THEN CONCAT([基期b_time], "-", [基期e_time], "--->", [现期b_time], "-", [现期e_time])
WHEN [subject] IN ("B超公里费", "C超公里费")
AND [现期b_time] <> [基期b_time]
THEN CONCAT(ROUND(100 * ([现期b_time] / [基期b_time] - 1), 2), "%")
ELSE NULL -- 添加一个默认情况,以避免报错
END
```
请注意,我修改了代码以删除重复的部分,并添加了一个默认情况以避免报错。如果您仍然遇到问题,请提供更多的错误信息以便我能更好地帮助您。
相关问题
case n when n1 then c case a when b then d else end as
这是一个 SQL 查询中的 CASE 表达式,它的语法如下:
```
CASE expression
WHEN value1 THEN result1
WHEN value2 THEN result2
...
ELSE result
END
```
其中,`expression` 是需要进行比较的表达式,`value1`、`value2` 等是需要匹配的值,`result1`、`result2` 等是对应匹配值的结果,`result` 是默认值。在你给出的语句中,有两个 CASE 表达式,第一个 CASE 表达式是:
```
CASE n
WHEN n1 THEN c
END
```
它的意思是,如果 `n` 的值等于 `n1`,那么返回 `c`,否则返回 `NULL`。第二个 CASE 表达式是:
```
CASE a
WHEN b THEN d
ELSE NULL
END
```
它的意思是,如果 `a` 的值等于 `b`,那么返回 `d`,否则返回 `NULL`。整个语句的意思是,根据两个 CASE 表达式的结果返回相应的值。
case when as a,b
回答: 在SQL中,CASE WHEN语句可以用于给表达式赋予别名。在这种情况下,a和b是给CASE WHEN语句中的表达式赋予的别名。具体的用法是在CASE WHEN语句后面添加AS关键字,然后在AS后面指定别名。例如,可以使用以下语法来给CASE WHEN语句赋予别名a和b:CASE WHEN condition1 THEN result1 ELSE result2 END AS a, CASE WHEN condition3 THEN result3 ELSE result4 END AS b。这样,a和b就是CASE WHEN语句的结果的别名。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)