本文介绍了如何在SQL Server中使用Oracle的解码函数。
在Oracle中,解码函数用于实现if-then-else类型的要求。
Decode功能在SQL Server中不可用。
在Oracle中,解码函数的语法是:
SELECT DECODE("ColumnName","Search_Data_1","result1",...."SearchData_n","result_n" )
其中search_data是要搜索的值,result 是代替 Search_Data 显示的值。
例子:
创建表
CREATE TABLE BOOK ( [Id] int IDENTITY(1,1) NOT NULL, [Name] nvarchar(50) NULL, [Author] nvarchar(50) NULL, [Price] decimal(18, 2) NULL, PRIMARY KEY CLUSTERED ( [Id] ASC ) )
插入一些数据
insert into BOOK select 'ASP.NET 4.0 UNLEASHED','Stephen Walther',600 union all select 'DATA STRUCTURES','SEYMOUR LIPSCHUTZ',300 union all select 'jQuery UI','Eric Sarrion',200 select * from BOOK
在SQL Server中实现DECODE 函数如下所示:
select case when Author='Stephen Walther' then 1 when Author='SEYMOUR LIPSCHUTZ' then 2 when Author='Eric Sarrion' then 3 else 0 end as Author from BOOK
日期:2020-06-02 22:18:12 来源:oir作者:oir