1.除非另外还指定了 TOP 或 FOR XML,否则,ORDER BY 子句在视图、内联函数、派生表、子查询和公用表表达式中无效。

解决方法:top 100 percent *

2.如何对查询结果编号?

解决方法:row_number() over (order by billdate desc) as rowid

3.如何查询多个不关联表?且各表的字段不一样怎么办?

解决方法:使用union all,具体方法如下面代码

示例代码:(执行成功,但代码有多余,为了提供实例说明)

select top  a.* from (

select top  percent *,row_number() over (order by billdate desc,a.lx asc,a.id desc) as rowid from
(Select tablename='wenzhang',title,id,BILLDATE,lx,zqs=,qs= From wenzhang
union all
Select tablename='jchd',title,id,BILLDATE,lx=,zqs=,qs= From jchd
union all
Select tablename='jianbao',title,id,BILLDATE,lx=,ZQS,QS From jianbao ) as a
where =
order by billdate desc,a.lx asc,a.id desc
) a where a.rowid not in (select top a.rowid from ( select top percent *,row_number() over (order by billdate desc,a.lx asc,a.id desc) as rowid from
(Select tablename='wenzhang',title,id,BILLDATE,lx,zqs=,qs= From wenzhang
union all
Select tablename='jchd',title,id,BILLDATE,lx=,zqs=,qs= From jchd
union all
Select tablename='jianbao',title,id,BILLDATE,lx=,ZQS,QS From jianbao ) as a
where =
order by billdate desc,a.lx asc,a.id desc
)
a order by a.billdate desc,a.lx asc,a.id desc) order by a.billdate desc,a.lx asc,a.id desc

简化后代码:(执行成功)

select top  a.* from (

select *,row_number() over (order by billdate desc,a.lx asc,a.id desc) as rowid from
(Select tablename='wenzhang',title,id,BILLDATE,lx,zqs=,qs= From wenzhang
union all
Select tablename='jchd',title,id,BILLDATE,lx=,zqs=,qs= From jchd
union all
Select tablename='jianbao',title,id,BILLDATE,lx=,ZQS,QS From jianbao ) as a
where = ) a where a.rowid not in (select top a.rowid from ( select *,row_number() over (order by billdate desc,a.lx asc,a.id desc) as rowid from
(Select tablename='wenzhang',title,id,BILLDATE,lx,zqs=,qs= From wenzhang
union all
Select tablename='jchd',title,id,BILLDATE,lx=,zqs=,qs= From jchd
union all
Select tablename='jianbao',title,id,BILLDATE,lx=,ZQS,QS From jianbao ) as a
where = )
a order by a.billdate desc,a.lx asc,a.id desc) order by a.billdate desc,a.lx asc,a.id desc

sql server 查询多个不关联表且对结果编号的更多相关文章

  1. SQL Server查询某个字段存在哪些表中

    一.查询SQL Server中所有的表 SQL语句:SELECT * FROM sys.tables name列表示所有的表名. 二.查询SQL Server中所有的列 SQL语句:SELECT * ...

  2. SQL Server查询数据库中所有的表名及行数

    SELECT a.name, b.rows FROM sysobjects AS a INNER JOIN sysindexes AS b ON a.id = b.id WHERE (a.type = ...

  3. SQL Server查询性能优化——堆表、碎片与索引(二)

    本文是对 SQL Server查询性能优化——堆表.碎片与索引(一)的一些总结.  第一:先对 SQL Server查询性能优化——堆表.碎片与索引(一)中的例一的SET STATISTICS IO之 ...

  4. 何查询SQL Server数据库没有主键的表并增加主键

    SQL Server数据库中,如果一个表没有主键,我们该如何查询呢?本文我们主要就介绍了如何查询数据库中没有主键的表名并为其增加主键的方法,希望能够对您有所帮助. 该功能的实现代码如下: declar ...

  5. sql server 查询某个表被哪些存储过程调用

    sql server 查询某个表被哪些存储过程调用 select distinct object_name(id) from syscomments where id in (select id fr ...

  6. 数据库表设计时一对一关系存在的必要性 数据库一对一、一对多、多对多设计 面试逻辑题3.31 sql server 查询某个表被哪些存储过程调用 DataTable根据字段去重 .Net Core Cors中间件解析 分析MySQL中哪些情况下数据库索引会失效

    数据库表设计时一对一关系存在的必要性 2017年07月24日 10:01:07 阅读数:694 在表设计过程中,我无意中觉得一对一关系觉得好没道理,直接放到一张表中不就可以了吗?真是说,网上信息什么都 ...

  7. SQL Server 查询锁表和接锁表

    SQL Server 查询锁表 select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) as tableNa ...

  8. sql server 查询时会锁表吗?

    sql server在执行查询语句时会锁表.在锁表期间禁止增删改操作. 如果不想锁表,那就再表名或别名后面加上WITH(NOLOCK) 如下所示:

  9. [转] 利用SET STATISTICS IO和SET STATISTICS TIME 优化SQL Server查询性能

    首先需要说明的是这篇文章的内容并不是如何调节SQL Server查询性能的(有关这方面的内容能写一本书),而是如何在SQL Server查询性能的调节中利用SET STATISTICS IO和SET ...

随机推荐

  1. C# 之 FileSystemWatcher事件多次触发的解决方法

    1.问题描述  程序里需要监视某个目录下的文件变化情况: 一旦目录中出现新文件或者旧的文件被覆盖,程序需要读取文件内容并进行处理.于是使用了下面的代码: public void Initial() { ...

  2. java和C#中 定义变量,加一个小括号是什么意思。。。

    在群里灌水发现,有人这样定义字符串,感觉很好奇..又问了群友,群友说这样定义没问题.. String strtemp = ("test"); 我自己试了下,java和C#都可以,C ...

  3. JAVA WEB 作用域之间的区别

    JAVA WEB 作用域 1.page属性范围(pageContext) a.在一个页面设置的属性,跳转到其他页面就无法访问了(包括重定向和). 示例:pageScopeDemo01.jsp < ...

  4. jquery datatable[表格处理]

    最近在公司实习发现一个额功能强大的表格解决方案,了解了一下,先总结如下: 1.官网:http://www.datatables.net/ 2.需要特别注意:被dataTable处理的table对象,必 ...

  5. linux安装问题

    java: cannot execute binary file问题 主要原因是 linux系统是32位的,jdk版本是64位的. 补充知识: 1.查看linux位数: #uname -a 如果有x8 ...

  6. js中的命名规范

    在实际开发中规范的命名,不仅方便自己查看,理解变量的实际意义,而且在团队开发中也能提高开发效率. 下面将介绍javascript中的变量的命名规范: 1)首先,变量名要有实际意义,不建议使用单个的字母 ...

  7. 【阿里云产品公测】在Laravel4框架中使用阿里云OCS缓存

    作者:阿里云用户 supechina Laravel 是我最近用得非常多而且越用就越喜欢的一款PHP框架,由于没有向下兼容的历史包袱,完全面向对象的风格,借助 Facades 优雅的 IoC Cont ...

  8. 九 AIDL

      多进程 多线程 优点 安全 稳定 扩大内存空间 节约CPU时间 AIDL=Android Interface definition language   使用情况:做一个下载,不想让你的下载拖垮你 ...

  9. maven 本地仓库nexus的安装

    首先我们将nexus下载下来:http://www.sonatype.org/downloads/nexus-latest-bundle.zip 下载下来之后我们将文件解压,解压完成之后,我们首先,打 ...

  10. 【安卓面试题】简述一下Android系统的架构?

    安卓系统的架构分为四层:应用程序层,应用框架层,系统框架层和内核层. 应用程序层:开发者编写的供用户使用的应用 应用框架层:开发者构建应用程序可能用到的API, 例如ActivityManager 系 ...