我可以在字段上使用case语句来更改另一个字段的值吗?像这样的东西,
SELECT TaskDescription,
CASE
When TaskDescription='Lab Dips / Handloom Sent' then seq ='1'
When TaskDescription='Lab Dips / Handloom Approve' then seq ='2' end,seq FROM SomeTable
我在TaskDescription列中有一些任务描述,我想按特定顺序获取。这就是为什么我想为每个任务描述值添加一个序列号,这样我就能得到预期的顺序,只是写'按seq排序'
答案 0 :(得分:1)
如果您想要更新表格,可以使用:
Update SomeTable
Set seq = '1'
Where TaskDescription='Lab Dips / Handloom Sent'
更新:
Select TaskDescription ,seq
From (
SELECT TaskDescription,
(CASE
When TaskDescription='Lab Dips / Handloom Sent' then 1
When TaskDescription='Lab Dips / Handloom Approve' then 2
end) As seq FROM SomeTable
) As TB
Order by TB.seq
或者:
With tb As (
SELECT TaskDescription
,(CASE TaskDescription
When 'Lab Dips / Handloom Sent' then 1
When 'Lab Dips / Handloom Approve' then 2
end) As seq
FROM SomeTable
)
Select * from tb
Order by tb.seq