- <>
——简单情况函数
案例性
,当' 1 ' '男'
,当' 2 ' '女'
,其他的其他'末端
——案例搜索函数
这样当性=' 1 '那么'男'
,,当性=' 2 '然后'女'
,,其他的其他的结束,
这两种方式,可以实现相同的功能。简单情况函数的写法相对比较简洁,但是和案件搜索函数相比,功能方面会有些限制,比如写判定式。
还有一个需要注重的问题,情况函数只返回第一个符合条件的值,剩下的案例部分将会被自动忽略。
比如说,下面这段sql,你永远无法得到第“二”类这个结果:
案例col_1时(“a”、“b”),那么“第一类“
,,当col_1 (a),那么“第二类“
,,其他的其他的结束,
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2。批量更新数据
——假设状态只有3个选项,把所有FStatus=3的更新为1,FStatus=88的更新为5,FStatus=99的更新为9,
更新T_SUF_Barcode设置FStatus=(案例FStatus
,,,,,,,,,,,,,,,,,,,,,当' 3 '然后' 1 ',
,当“88”“55”
,其他FStatus,结束),
,,,FBarcode,“180121702150001”与“180121702153000”
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
3。将条码表中的状态用中文表示
选择fstatus得到T_SUF_Barcode t1,在那里,FBarcode,“180121702150001”与“180121702153000”
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
fstatus 1
…
5…
5 9
…
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
选择t1。FBarcode(案例t1.FStatus
,,,,,,,,,然后,当1”正常的
,,,,,,,,,然后,当5”未知”
,,,,,,,,,然后,当9”作废”结束)状态
,从T_SUF_Barcode t1
,,,FBarcode,“180121702150001”与“180121702153000”
FBarcode状态
180121702150001正常
180121702150002…
180121702150002
180121702150004…
180121702150004作废
180121702150012…
4。将和与案件结合使用,可以实现分段统计。
,,,,如果现在希望将上表中各种状态的条码进行统计,sql语句如下:
,选择,sum (t1。FStatus当1 1,结束)正常,
,,sum (t1。FStatus当5 2,结束)未知,
,sum(情况下,当t1。FStatus !=1, t1.FStatus !=5 1,结束)作废
从T_SUF_Barcode t1,,,FBarcode,“180121702150001”与“180121702153000”
——求总和和,当为5时,更新为2,并求和符合条件的2。这里正常,未知,作废符合条件的各有1000个数据。
正常未知,,,,,作废
1000 2000 (1000 * 2),1000年,
,,,,,,,,- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
,,
,选择,计数(t1。FStatus当1 1,结束)正常,
,,计数(t1。FStatus当5 1,结束)未知,
,计数(情况下,当t1。FStatus !=1, t1.FStatus !=5 1,结束)作废
从T_SUF_Barcode t1,,,FBarcode,“180121702150001”与“180121702153000”
——统计符合条件的个数。
正常未知作废
1000 1000 1000