请教一个问题 sql语句中的case when条件 @a=1 字段1就等于'ZM01'如果@a=2 字段1就等于‘ZM02’,‘ZM03’,‘ZM04’,‘ZM05’ 要怎么写呢?麻烦举个例子 谢谢了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 SELECT 编号,SUM(CASE WHEN 科目='数学' THEN 数学分数 END) AS 数学, SUM(CASE WHEN 科目='语文' THEN 语文分数 END) AS 语文 FROM 表名 GROUP BY 编号;不知道这样写,你时候能理解。 类似于这个样子case when @a=1 then 'ZM01' else 'ZM02','ZM03','ZM04','ZM05' end 这种,但这个样子写的话会报错的 这样应该容易理解些 试一下这样写,可以不CASE @aWHEN 1 THEN 'ZM01' WHEN 2 THEN 'ZM02','ZM03','ZM04','ZM05' lz是如果@a=1就sql拼上 "字段1 = 'ZM01'"如果@a=2就在sql拼上" 字段1=‘ZM02’or 字段1=‘ZM03’or 字段1=‘ZM04’or 字段1=‘ZM05’"这个意思吧?good luck select XXXXfrom XXXXwhere (a = '1'and field1='ZM01')or(a = '2'and (field1='ZM02' or field1='ZM03' or field1='ZM04' or field1='ZM05')没用case when,好像能实现good luck ororor的那行少了个右括号good luck JPA的JavaBean映射文件报错 关于java应用服务器的困惑 c3p0配置问题 关于myEclipse中使用泛型的报错的问题 Hibernate中一对多双向关联中获取Set问题 请问一下Struts令牌机制中是否一定要前后两个action进行配合? +++一个java方法,包括了300个参数,编译时出错“too many parameter”,怎么办?? 在J2EE应用程序中如何编写运行日志和错误日志 求求你了 ejb的问题 struts2验证用户登录问题 复制以登录的网页,关闭浏览器在登录,可以直接操作
SUM(CASE WHEN 科目='语文' THEN 语文分数 END) AS 语文 FROM 表名 GROUP BY 编号;
不知道这样写,你时候能理解。
else 'ZM02','ZM03','ZM04','ZM05' end 这种,但这个样子写的话会报错的 这样应该容易理解些
CASE @a
WHEN 1 THEN 'ZM01'
WHEN 2 THEN 'ZM02','ZM03','ZM04','ZM05'
就sql拼上 "字段1 = 'ZM01'"如果@a=2
就在sql拼上" 字段1=‘ZM02’or 字段1=‘ZM03’or 字段1=‘ZM04’or 字段1=‘ZM05’"这个意思吧?good luck
from XXXX
where
(a = '1'
and field1='ZM01'
)
or
(a = '2'
and (field1='ZM02' or field1='ZM03' or field1='ZM04' or field1='ZM05'
)没用case when,好像能实现good luck