select a from table1
得如下表
a
0
1
2
5我要想得到如下的表,怎么写SQL语句?
a col
0 111
1 222
2 666
5 123即有关系如下:
当a列数据为0时,则col列数据为'111',其他都一样,因数据有限....
得如下表
a
0
1
2
5我要想得到如下的表,怎么写SQL语句?
a col
0 111
1 222
2 666
5 123即有关系如下:
当a列数据为0时,则col列数据为'111',其他都一样,因数据有限....
select a,(case when a=0 then '111' else col) as col from table1
-- Author : htl258(Tony)
-- Date : 2010-05-07 17:50:04
-- Version: Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (Intel X86)
-- Jul 9 2008 14:43:34
-- Copyright (c) 1988-2008 Microsoft Corporation
-- Developer Edition on Windows NT 5.1 <X86> (Build 2600: Service Pack 3)
-- Blog : http://blog.csdn.net/htl258
------------------------------------------------------------------------------------> 生成测试数据表: [tb]
IF OBJECT_ID('[tb]') IS NOT NULL
DROP TABLE [tb]
GO
CREATE TABLE [tb] ([a] [int])
INSERT INTO [tb]
SELECT '0' UNION ALL
SELECT '1' UNION ALL
SELECT '2' UNION ALL
SELECT '5'--SELECT * FROM [tb]-->SQL查询如下:
select a,col=
case a
when 0 then 111
when 1 then 222
when 2 then 666
when 5 then 123
else 0
end
from tb
/*
a col
----------- -----------
0 111
1 222
2 666
5 123(4 行受影响)*/