哈佛h7汽车之家:sql问题!
来源:百度文库 编辑:神马品牌网 时间:2024/05/30 19:31:42
SELECT @MemberId = case when @MemberId = MemberId then @MemberId + 1 else @MemberId end
FROM Member order by MemberId这句话是什么意思啊?那位大虾可以告诉我。谢谢!
FROM Member order by MemberId这句话是什么意思啊?那位大虾可以告诉我。谢谢!
@Memberid是个变量,应该在这条语句之前进行了声明,并已经被赋值,看语句应该是个数字
这条语句是在Member 中查找MemberId 为@MemberId 的数据,如果找到了,就将@MemberId 的值加1,如果找不到则@MemberId 的值不变。
比如@memberid开始被赋值为1
如果member表中存在memberid=1的数据,则@MemberId 的值为2,否则@MemberId 的值还是1
case 约等于decode
看下例:
SELECT count(*),
CASE code WHEN 'M' THEN '男性' WHEN 'F' THEN '女性' ELSE '不明' END
FROM table1 GROUP BY code;