急用,请大家帮忙看看,一个简单的查询,在线等,50分 :)

xbhy365 2006-11-08 03:27:20
我是想查询一个字段下面所有的值 比如
table a
-----------------------------------------------
b
1 1
2 1
3 1
4 0
-----------------------------------------------
如果B列值都为1,返回Y,如果还有别的值,返回X
...全文
183 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
xbhy365 2006-11-08
  • 打赏
  • 举报
回复
我说呢 郁闷了半天嘿嘿
zhengye6910 2006-11-08
  • 打赏
  • 举报
回复
潇洒的老乌龟,你写错了个字段
select b=case when exists(select b from @t where b<>1) then 'X' else 'Y' end
此处是b而不是1

SORRY:刚才写错了
zhengye6910 2006-11-08
  • 打赏
  • 举报
回复
潇洒的老乌龟,你写错了个字段
select b=case when exists(select b from @t where b<>1) then 'X' else 'Y' end
此处是1而不是b
zhazhaok 2006-11-08
  • 打赏
  • 举报
回复
if exists (select * from tablename where b!=1)
select X
else select Y
xbhy365 2006-11-08
  • 打赏
  • 举报
回复
多谢各位关心! dawugui(潇洒老乌龟) 先生说得对,我问是所有B的值。只要返回一个X或Y就好了。
我调试下,少候结帖。
cn_popeye 2006-11-08
  • 打赏
  • 举报
回复

(所影响的行数为 4 行)

b
----
Y
X
X
X

(所影响的行数为 4 行)
cn_popeye 2006-11-08
  • 打赏
  • 举报
回复
select case dbo.FN_ckStr(b) when 1 then 'Y' else 'X' end as b
from @a
cn_popeye 2006-11-08
  • 打赏
  • 举报
回复

--新建一个函数判断列中是否都是'1'
if object_id('FN_ckStr')>0
drop function FN_ckStr
go

create function FN_ckStr(@str varchar(8000))
returns int
begin
declare @i int
declare @re int
set @str = replace(@str,' ','')
set @i = 1
set @re = 1

while @i<len(@str)
begin
if substring(@str,@i,1) <> '1'
begin
set @re = 0
break
end
set @i = @i + 1
end

return @re
end

declare @a table(b varchar(30))
insert into @a
select '1 1' union all
select '2 1' union all
select '3 1' union all
select '4 0'

select case dbo.FN_ckStr(b) when 1 then 'Y' else 'N' end as b
from @a
dawugui 2006-11-08
  • 打赏
  • 举报
回复
happydreamer(重返csdn) 不对,他问的是所有B的值,而不是每行B的值
dawugui 2006-11-08
  • 打赏
  • 举报
回复
declare @t table(a int,b int)

insert @t
select 1,1 union all
select 2,1 union all
select 3,1 union all
select 4,0


select b=case when exists(select 1 from @t where b<>1) then 'X' else 'Y' end

b
----
X

(所影响的行数为 1 行)
happydreamer 2006-11-08
  • 打赏
  • 举报
回复
select case b when '1' then 'Y' else 'X' end from tablename

34,594

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧