问个高手,case when中第8行=号处有错误,
CREATE proc sp_T_Message_mailcount_w
@id varchar(50)
as
begin
SELECT *,(select count(id) from dbo.T_message_q where acceptPersonID=@id and flag='0' and mailtype=a.id)as newMsg ,
(select count(id) from dbo.T_message_q where case when a.id='7' then (mailType=a.id) ELSE (acceptPersonID=@id ) AND (mailType=a.id) OR (sendPersonID=@id ) and (mailTypeSend=a.id) end) as countMsg
FROM T_message_type a
WHERE (typeuser = @id ) OR
(typeuser = '0') AND (inde <> 'CDS')
ORDER BY id
end
GO
相关推荐
oracle case when 语句的用法详解
本篇文章是对oracle case when 语句的用法进行了详细的分析介绍,需要的朋友参考下
关于case when语句的报错问题详解
前言 在mysql数据库中,有时候我们会使用到类似if else的判断操作。那么mysql中怎么处理这种需求呢? mysql 判断操作一种语法: case ..when语句 但最近在使用的时候遇到了一个问题,下面话不多说了,来一起看看详细的介绍吧 直接说明问题。我有一张存储身份证号码的表id_card_message,表结构和数据如下(MySQL5.7.14): mysql> select * from id_card_message; +------+--------------------+ | id | id_card_no | +------+------------------
Oracle CASE WHEN详解[代码]
本文详细介绍了Oracle中的CASE WHEN条件判断语句,包括其基本概念、两种表达式形式(简单CASE函数和CASE表达式)以及使用时的注意事项。文章通过示例展示了WHEN的执行顺序,强调了第一个满足条件的WHEN会终止后续判断的特性,并对比了CASE WHEN与DECODE函数的适用场景。此外,还指出了在Oracle和PL/SQL中省略ELSE子句时的不同行为,以及在PL/SQL中可能引发的ORA-06592错误及解决方法。
MySQL CASE WHEN函数详解[可运行源码]
本文详细介绍了MySQL中的CASE WHEN函数,包括其两种语法结构(简单CASE表达式和搜索CASE表达式)、核心应用场景(如数据分类与标记、数据清洗与转换、动态聚合计算和多条件复杂逻辑)、性能优化建议(如索引利用策略、避免NULL值陷阱和减少嵌套层级)、常见错误规避(如条件冲突、类型匹配和ELSE默认值)以及进阶实践技巧(如动态排序处理、字段映射转换和版本兼容性)。通过掌握这些内容,可以显著提升SQL查询的灵活性和效率。
Oracle sql文总结(case when,查看执行计画,文本操作,查看锁表及解锁,游标)
Oracle sql文总结(case when,查看执行计画,文本操作,查看锁表及解锁,游标)


疑难问题

