当前位置: 代码迷 >> ASP.NET >> |M| SQL查询词句 查询字段值是否有为"Yes"解决方案
  详细解决方案

|M| SQL查询词句 查询字段值是否有为"Yes"解决方案

热度:9999   发布时间:2013-02-26 00:00:00.0
|M| SQL查询词句 查询字段值是否有为"Yes"
如表
table  
id       ISOK
1         Yes
2         No
3         No

查询表table当ISOK有为 "YES "时返回   1   否为   0
也就是用Cmd..ExecuteScalar(....sql)
就是这里面的sql要怎么写

谢谢

------解决方案--------------------------------------------------------
table
id ISOK -- bit
1 1
2 0
3 0

bool字段应该用bit,不要用字符类型

SELECT * FORM [table] WHERE [ISOK]
------解决方案--------------------------------------------------------
bit 字段在程序里显示的是 True False
------解决方案--------------------------------------------------------
select id,case ISOK when 'YES ' then 1 else 0 end from tb
------解决方案--------------------------------------------------------
select id, '1 'from table where ISOK= 'yes '
union
select id, '0 'from table where ISOK= 'no '
------解决方案--------------------------------------------------------
使用CASE

Create Table TEST
(id Int,
ISOK Varchar(10))
Insert TEST Select 1, 'Yes '
Union All Select 2, 'No '
Union All Select 3, 'No '
GO
Select
id,
(Case When ISOK = 'Yes ' Then 1 Else 0 End) As ISOK
From TEST
GO
Drop Table TEST
--Result
/*
id ISOK
1 1
2 0
3 0
*/
------解决方案--------------------------------------------------------
Select id,
(Case When ISOK = 'Yes ' Then 1 Else 0 End) As ISOK
From TEST
------解决方案--------------------------------------------------------
select id,
ISOK=case ISOK when 'Yes ' then 1 when 'No ' then 0 end
from TEST
------解决方案--------------------------------------------------------
简单
------解决方案--------------------------------------------------------
bool字段用bit
  相关解决方案