All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
asp.net2.0内置Application对象的应用
PHP开发实例:创建PDF中文文档的程序代码_php资料_编程技术
C#中的foreach语句使用方法
C#中显示XML文件使用实例
Visual C++ 6.0教程:c++数据类型之指针
Sql,server一些常见性能问题的总结_[SQL,Server教程]
C#中删除XML节点实例
ASP.NET页面事件_.net资料_编程技术
在ASP.NET应用程序中上传文件_[Asp.Net教程]
Windows IIS环境下安装和配置PHP开发环境_[PHP教程]
Reading number is top 10 pictures
NeedWallpaper8
西游四格漫画(六)
Discharge accidentally Actresses by the breast1
Sell the barbecue as says father du breul5
这才是真正的人体艺术2
Park waits to have her picture taken exposed
The household design, do not do bridal chamber a pity
青春清纯美女大集合4
农夫山泉变身记
9.3阅兵全景图8-航空梯队
Download software ranking
Unix video tutorial18
Jinling thirteen stock
虚拟机5.5.3版
Boxer's Top ten classic battle10
仙剑奇侠传98版歌曲
双旗镇刀客B
Unix video tutorial4
VC++6.0简体中文版
超级战舰
WebService在.NET中的实战应用教学视频 → 第5集
delv published in(发表于) 2013/12/30 4:38:40 Edit(编辑)
SQL中CASE使用_mssql学习_编程技术

SQL中CASE使用_mssql学习_编程技术

SQL中CASE使用_mssql学习_编程技术-你的首页-uuhomepage.com
今天在项目中有一问题,在网上查询了case的用法,帖出来和大家分享下。
问题描述:在一张表中有一字段bit类型,表示此条数据是否被锁定,在页面上有一按钮是对此条数据进行锁定和解锁的,选择页面中的数据,点击这个按钮,如果这条数据是锁定的,就解锁;如果是未说定的就锁定,这样就用一条语句来实现。后来想到以前使用过sql中的case语句能实现这种功能。查询了一下,果然好用,呵呵.....
CASE
计算条件列表并返回多个可能结果表达式之一。
CASE 具有两种格式:
简单 CASE 函数将某个表达式与一组简单表达式进行比较以确定结果。
CASE 搜索函数计算一组布尔表达式以确定结果。
两种格式都支持可选的 ELSE 参数。
语法
简单 CASE 函数:
CASE input_expression
WHEN when_expression THEN result_expression
[ ...n ]
[
ELSE else_result_expression
END
CASE 搜索函数:
CASE
WHEN Boolean_expression THEN result_expression
[ ...n ]
[
ELSE else_result_expression
END
参数
input_expression
是使用简单 CASE 格式时所计算的表达式。Input_expression 是任何有效的 Microsoft? SQL Server? 表达式。
WHEN when_expression
使用简单 CASE 格式时 input_expression 所比较的简单表达式。When_expression 是任意有效的 SQL Server 表达式。Input_expression 和每个 when_expression 的数据类型必须相同,或者是隐性转换。
n
占位符,表明可以使用多个 WHEN when_expression THEN result_expression 子句或 WHEN Boolean_expression THEN result_expression 子句。
THEN result_expression
当 input_expression = when_expression 取值为 TRUE,或者 Boolean_expression 取值为 TRUE 时返回的表达式。result expression 是任意有效的 SQL Server 表达式。
ELSE else_result_expression
当比较运算取值不为 TRUE 时返回的表达式。如果省略此参数并且比较运算取值不为 TRUE,CASE 将返回 NULL 值。Else_result_expression 是任意有效的 SQL Server 表达式。Else_result_expression 和所有 result_expression 的数据类型必须相同,或者必须是隐性转换。
WHEN Boolean_expression
使用 CASE 搜索格式时所计算的布尔表达式。Boolean_expression 是任意有效的布尔表达式。
结果类型
从 result_expressions 和可选 else_result_expression 的类型集合中返回最高的优先规则类型。有关更多信息,请参见数据类型的优先顺序。
以上是sql server帮助中的关于case的信息,下面来一个实例帮助理解:
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[db_case_user]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[db_case_user]
GO
CREATE TABLE [dbo].[db_case_user] (
[id] [int] IDENTITY (1, 1) NOT NULL ,
[name] [varchar] (100) COLLATE Chinese_PRC_CI_AS NULL ,
[lock] [bit] NULL
) ON [PRIMARY]
GO
insert into db_case_user (name, lock) values ('张三', 0)
insert into db_case_user (name, lock) values ('李四', 1)
insert into db_case_user (name, lock) values ('王五', 0)
insert into db_case_user (name, lock) values ('赵六', 0)
现在更新数据库中所有人的lock字段,lock为0的更新成1,为1的更新成0。
update db_case_user
set lock=(
CASE lock
WHEN 1 THEN 0
WHEN 0 THEN 1
END
)




添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.