这句sql什么意思 - MS-SQL Server / 基础类
select * from tb t where (select count(1) from tb where id<=t.id) between 10 and 20
这句sql是如何执行的 也就是原理是什么? 我看不懂!~~~
当前记录去执行 (select count(1) from tb where id<=t.id) 的结果在10-20之间。
建议你先自己试着解释一下这个语句,否则别人也根本不知道你目前已经懂了什么,到什么层次,到底是哪儿不懂。
写出你自己的理解,然后让别人来看你的理解是否正确。 否则别人解释过简单你还是理解不了,解释得过细,可能又是根本不必要。
这样的写法 我今天刚看见过 汗~~~
可以说都不理解,希望能详细点的解答~~
谢谢
select * from tb t where (select count(1) from tb where id<=t.id) between 10 and 20
好像应该能取出第 11到第20条记录
内层的每一条记录与外层的当前记录进行比较,形成比较结果看是否当前记录满足条件
SQL code:
--> 生成测试数据表: [tb]
IF OBJECT_ID('[tb]') IS NOT NULL
DROP TABLE [tb]
GO
CREATE TABLE [tb] ([id] [int],[name] [nvarchar](10))
INSERT INTO [tb]
SELECT '1','a1' UNION ALL
SELECT '3','a2' UNION ALL
SELECT '6','a3' UNION ALL
SELECT '8','a4' UNION ALL
SELECT '10','a5' UNION ALL
SELECT '13','a6' UNION ALL
SELECT '15','a7' UNION ALL
SELECT '18','a8' UNION ALL
SELECT '20','a9' UNION ALL
SELECT '23','a10' UNION ALL
SELECT '25','a11' UNION ALL
SELECT '28','a12' UNION ALL
SELECT '30','a13' UNION ALL
SELECT '33','a14' UN
相关问答:
可能因为工作的原因 接触数据库这块比较少,之前都是做程序这块,数据库这块都有专门的人来做 分工都很明细 所以对数据库这一块完全不了解。前段时间 去面试了几家公司 几乎都是在数据库这块挂掉的 连个简单的SQ ......
sql的软件在哪里可以下啊!在网上找了蛮多都用不了啊
随便搞一D版吧,
迅雷第一个就可以用
2000,2005都这样
http://119.147.41.16/down?cid=0698C2D64D7D637D90A6D2482298E6717D4F15CD&t=2&fmt=-1 ......
表数据
COL1 COL2 COL2 COL4 COL5
----------------------------------------------------------------------------------------------
2010-05-05 00:00 ......
通过NAME字段条件查询一个数据表,假设我有100个姓名,有以下两个方法,
方法1:
把100个Name 组成一个SQL语句,比如 Select * from tmp_table where Name='张三' or Name ='李四' Or ...Or Name='第一百个姓名'
......
在Access的查询中执行下面的语句,无效,提示期待select ,updata ,...
CreateTble C=Answer N="回帖表"
(
C=ID T="INTEGER" P=No M=No N="编号" Z=false,
C=Ques ......