读书人

sql 查询的语句,该如何解决

发布时间: 2012-04-04 16:38:51 作者: rapoo

sql 查询的语句

SQL code
(casewhen  (select dailijihui from  House_kuozhan   where  House_kuozhan.fid = House_into.id)=1          and   datediff(d,getdate(),convert(nvarchar(10),dateadd(d,-30,tuizuDate),20))<=0   then   '<span  style=\"color:blue;\"></span>'    when  (select dailijihui from  House_kuozhan   where  House_kuozhan.fid = House_into.id)=1          and  datediff(d,getdate(),convert(nvarchar(10),dateadd(d,-30,tuizuDate),20))>0    then   '<span  style=\"color:blue;text-decoration:line-through;\"></span>'    when    datediff(d,getdate(),convert(nvarchar(10),dateadd(d,-30,tuizuDate),20))<=0      and    (     (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) > 7            and   (select dailijihui from  House_kuozhan   where  House_kuozhan.fid = House_into.id)=0     or    (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) > 90            and   (select dailijihui from  House_kuozhan   where  House_kuozhan.fid = House_into.id) in(0.1,0.2,0.3)    or    (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) > 60              and   (select dailijihui from  House_kuozhan   where  House_kuozhan.fid = House_into.id) in(0.4,0.5,0.6)    or    (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) > 30             and   (select dailijihui from  House_kuozhan   where  House_kuozhan.fid = House_into.id) in(0.7,0.8,0.9)    )   then  '<span  style=\"color:red;\"></span>'    when    datediff(d,getdate(),convert(nvarchar(10),dateadd(d,-30,tuizuDate),20))<=0      and        (        (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) >= 4                and   (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) < 7                and   (select dailijihui from  House_kuozhan   where  House_kuozhan.fid = House_into.id)=0         or       (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) >= 87               and   (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) < 90                 and   (select dailijihui from  House_kuozhan   where  House_kuozhan.fid = House_into.id) in(0.1,0.2,0.3)        or       (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) >= 57                and   (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) < 60                  and   (select dailijihui from  House_kuozhan   where  House_kuozhan.fid = House_into.id) in(0.4,0.5,0.6)        or       (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) >= 27                and   (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) < 30                 and   (select dailijihui from  House_kuozhan   where  House_kuozhan.fid = House_into.id) in(0.7,0.8,0.9)       )    then  '<span  style=\"color:#8b0000;\"></span>' when    datediff(d,getdate(),convert(nvarchar(10),dateadd(d,-30,tuizuDate),20))>0      and    (     (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) > 7            and   (select dailijihui from  House_kuozhan   where  House_kuozhan.fid = House_into.id)=0     or    (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) > 90            and   (select dailijihui from  House_kuozhan   where  House_kuozhan.fid = House_into.id) in(0.1,0.2,0.3)    or    (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) > 60              and   (select dailijihui from  House_kuozhan   where  House_kuozhan.fid = House_into.id) in(0.4,0.5,0.6)    or    (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) > 30             and   (select dailijihui from  House_kuozhan   where  House_kuozhan.fid = House_into.id) in(0.7,0.8,0.9)    )    then  '<span  style=\"color:red;text-decoration:line-through;\"></span>'  when    datediff(d,getdate(),convert(nvarchar(10),dateadd(d,-30,tuizuDate),20))>0      and    (     (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) >= 4        and   (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) < 7        and   (select dailijihui from  House_kuozhan   where  House_kuozhan.fid = House_into.id)=0     or    (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) >= 87       and   (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) < 90         and   (select dailijihui from  House_kuozhan   where  House_kuozhan.fid = House_into.id) in(0.1,0.2,0.3)    or    (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) >= 57        and   (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) < 60          and   (select dailijihui from  House_kuozhan   where  House_kuozhan.fid = House_into.id) in(0.4,0.5,0.6)    or    (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) >= 27        and   (select datediff(d,fuwushijian,getdate())  from  House_kuozhan   where  House_kuozhan.fid = House_into.id) < 30         and   (select dailijihui from  House_kuozhan   where  House_kuozhan.fid = House_into.id) in(0.7,0.8,0.9)    )    then  '<span  style=\"color:#8b0000;text-decoration:line-through;\"></span>'  else  '<span></span>'  end)  



这些只是一些 SQL代码段, 就是想找人 帮我改改 ,简化一下 代码,因为里面有些重复的条件, 说白了 就是 优化一下 效率, ( case 分支语句 里面 嵌套多个 case 分支语句 效率怎么样啊 ... 这只是我个人的想法 )

如果 看的不是很懂, 我可以贴出 全部 代码,

[解决办法]

[解决办法]
等大牛啊


[解决办法]
这么大堆代码,人都看晕了.

SQL code
建议你提供详细的资料:例如表的结构,表之间的关系,测试数据,相关算法及需要的结果。这样有助于我们理解你的意思,更主要的是能尽快让你获得答案或解决问题的方法。
[解决办法]
没什么好优化的。
[解决办法]
看着都晕啊
[解决办法]
这个看完 都晕啦~ 拿问题精华出来嘛
[解决办法]

好大一堆

读书人网 >SQL Server

热点推荐