有两个表,一个是“信息表” 一个是“附加条件表”,这个sql语句带有分页功能的。原来的功能是从信息表里查信息,附加条件表里存有id的显示在前面。set @temp='select top '+str(@page_size)+' * from 信息表 where '+@str_where+' order by case when exists(select 1 from 附加条件表 where 信息表.id=id) then (select top 1 附加条件表排序字段 from 附加条件表 where 信息表.id=id) end desc,'+@str_order_by
现在想把 “附加条件表”的“附加条件表排序字段”这一列也显示出来,应该怎么办? @str_where @str_order_by 要做怎样的改动?
现在想把 “附加条件表”的“附加条件表排序字段”这一列也显示出来,应该怎么办? @str_where @str_order_by 要做怎样的改动?
解决方案 »
- 请教大侠们,如何得到该结果
- 怎么样增加默认值为null,属性为varchar,长度为20的字段?
- 请各位大虾帮忙,急!!!!
- 关于数据库表格的权限设计问题,数据库是sqlserver2000,前台是delphi!!!
- 请问这两个查询语句有什么不同?为什么效率会差很多?
- 300求解?sql server的事务问题!
- Access -> Sql Server 2000 怎样才能保留原 ACCESS 的某些字段的默认值,还有自增的ID,谢谢~~~
- 毕业设计(库存管理系统pb7+sqlserver7.0)
- 请问sp_executesql怎么用???
- 键盘的ASC码
- 请教SQL 2000 的几个语法问题????
- 请推荐一下学习reportingservice的电子书(pdf最好)
'select top '+str(@page_size) a.*,(select top 1 附加条件表排序字段 from 附加条件表 where id=a.id) as 附加条件表排序字段 from 信息表 a where '+ @str_where +' order by 附加条件表排序字段 desc, '+@str_order_by
set @temp='select top '+str(@page_size)+' * from 信息表 where '+@str_where+' order by case when exists(select 1 from 附加条件表 where 信息表.id=id) then (select top 1 附加条件表排序字段 from 附加条件表 where 信息表.id=id) end desc,'+@str_order_by
你的
'select top '+str(@page_size) a.*,(select top 1 附加条件表排序字段 from 附加条件表 where id=a.id) as 附加条件表排序字段 from 信息表 a where '+ @str_where +' order by 附加条件表排序字段 desc, '+@str_order_by
按你的修改的
set @temp='select top '+str(@page_size)+' a.*,(select top 1 附加条件表排序字段 from 附加条件表 where id=a.id) as 附加条件表排序字段 from 信息表 as a where '+@str_where+' order by case when exists(select 1 from 附加条件表 where 信息表.id=id) then (select top 1 附加条件表排序字段 from 附加条件表 where 信息表.id=id) end desc,'+@str_order_by
非常感谢!就是按你的方法!谢谢!