sql server 如何同时查询出 表内的第一条数据 和最后一条数据

sql server 如何同时查询出 表内的第一条数据 和最后一条数据

            sql:
            select * from(select top 1 * from tblname order by id desc)
                union 
            (select top 1 * from tblname order by id asc);

            像这种的就不要再回答了哈
sql
0

1个回答

select * from table where id = (select max(id) from table) or id = (select min(id) from table)

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
SQL 查询表的第一条数据 和 最后一条数据
SQL 查询表的第一条数据 和 最后一条数据
SQL查询表的第一条数据和最后一条数据
方法一: 使用TOP SELECT TOP 1 * FROM user;   SELECT TOP 1 * FROM user order by id desc;     方法二: 使用LIMIT SELECT * FROM user LIMIT 1;   SELECT * FROM user ORDER BY id ASC LIMIT 1;   SELECT * FROM u...
sql如何查询表的第一条记录和最后一条记录
问题: sql如何查询表的第一条记录和最后一条记录方法一:使用topselect TOP 1 * from apple;select TOP 1 * from apple order by id desc;(备注:top是Access的语法,MySQL不支持)方法二:使用LIMIT第一条记录mysql> select * from apple LIMIT 1;默认升序,等价于mysql> sele
sql查询最后一条数据
1、 sql查询最后一条数据select * from table order by id DESC limit 1 2、select top1 * from tablename where order by id desc  通过在mysql中测试,只有第一种可以使用,不知道其他数据库是否支持第二种方法,网上很多人说用第二种方法
sql语句,查出多条数据只取第一条
select * from (select * from user) where rownum=1;
mysql中如何查询表的第一条和最后一条记录
第一条: select * from 表名 limit 1; 最后一条:select * from表名 order by 表_id desc limit 1 最后一条:select * from表名 order by 表_id desc limit 1
Oracle 、sql如何查询表的第一条记录和最后一条记录
转载自http://blog.csdn.net/lanyang123456/article/details/55806160 Oracle 查询出来的数据取第一条 select * from (select * from order by ) where rownum=1; select * from (select * from order by desc) where ro
SQL Server 多表联合查询取最新一条数据
所有的SQL语句如下: create database David; use David --雨量站表 create table RainSite ( ID int not null primary key identity(1,1), SiteCode varchar(8) not null, SiteName varchar(20) not null, Latitut
Oracle查询出来的数据只取第一条和最后一条
结合oracer by和rownum来做: --第一条 select * from bdatag_tag order by tag_id where rownum = 1; --最后一条 select * from bdatag_tag order by tag_id desc where rownum = 1;  
使用Sqlite Select返回满足条件的第一条与最后一条记录
有关SQLITE最完整的操作语句参考资料,应当是官方网址的http://www.sqlite.org/lang.html这个地方。 经本人试验,limit关键字有效,而offset无效(读者可以进一步验证)。 在本文中,我使用SQLITE实现查询满足条件的第一条与最后一条记录。 选择满足条件的第一条记录 select  English from graduate_phras
PostreSQL取出每组第一条(最高)记录(6种方法 )
Select first row in each GROUP BY group?stackflow上面的一个问题。用窗口函数比较简单,但是那些没有窗口函数的数据库怎么办?id | customer | total ---+----------+------ 1 | Joe | 5 2 | Sally | 3 3 | Joe | 2 4 | Sally | 1...
sql 取重复数据的第一条记录
使用分析函数row_number() over (partiion by ... order by ...)来进行分组编号,然后取分组标号值为1的记录即可。目前主流的数据库都有支持分析函数,很好用。 其中,partition by 是指定按哪些字段进行分组,这些字段值相同的记录将在一起编号;order by则是指定在同一组中进行编号时是按照怎样的顺序。 示例(SQL Serve
sql server 分组后,取每组前1条数据
sql 排名开窗函数 ROW_NUMBER、DENSE_RANK、RANK、NTILE属于排名函数。 排名开窗函数可以单独使用ORDER BY 语句,也可以和PARTITION BY同时使用。 PARTITION BY用于将结果集进行分组,开窗函数应用于每一组。 ODER BY 指定排名开窗函数的顺序。在排名开窗函数中必须使用ORDER BY语句 http://www.cnblogs.co
sql分组后取第一条记录
select * from PD_ReCode a where  not  exists  (select *  from PD_ReCode b  where a.ChuangKou=b.ChuangKou and a.Time_Call  and    IS_Call=1 and DATEDIFF(dd,RiQi,GETDATE())=0  order by a.ChuangKou
db2查询第一条记录(含有where及order by子句)的语法
db2查询第一条记录(含有where及order by子句)的语法
left join的第二表中符合条件的第一条记录
表1 parking的数据   通过left join第二表(parking_member_freetime)的第一条记录;重点一点是group by id  SELECT p.*,f.member_free_starttime,f.member_free_endtime,f.residue_carport,IF(m.id IS NULL,'0','1') AS onlinePay FRO...
mybatis 关联查询时,从表只返回第一条记录解决办法
如果两表联查,主表和明细表的主键都是id的话,明细表的多条只能查询出来第一条。   造成以上情况可能的原因:   1、级联查询的时候,主表和从表有一样的字段名的时候,在mysql上命令查询是没问题的。但在mybatis中主从表需要为相同字段名设置别名。设置了别名就OK了。 例子: 主表Standard, 从表StandEntity,均有名为id的字段 1
postgresql 怎么查询第一条数据
order by后加个limit1 select ... from ... order by ... limit 1
两表关联,取B表满足条件的第一条数据
例如有两个表goods和prices,商品表中的一条商品信息会对应价格表中的多条价格信息,现在要根据商品表查询其商品对应的可用最新的价格,即要满足价格的生效日期必须在商品上市之前,如果有多个价格,就选取最后生效的那个价格。goods:商品表序号商品名称上市日期1iphone62015-10-012iphone62016-08-013iphone62017-09-01prices:价格表序号商品名称...
主子表 取子表的第一条数据 并与主表一起显示
当主表需要子表字段较少的情况下可以使用 SELECT a.* ,(select top 1 b.id from table1 where a.mianid=b.main order by b.id) as 字段1 ,(select top 1 b.name from table1 where a.mianid=b.main order by b.id) as 字段2 from maintab...
oracle 分组查询取第一条数据 关联查询 最后一条数据
select t.name1,t.name2,t.zx from (select row_number()over(partition by name1 order by zx desc)rn, test.* from test)t where t.rn=1;
left join ,查询结果集排序后取第一条数据
最近改一个问题,改sql语句,大概意思是 左关联 A 表 和 B表,  按照条件查询后对查询结果排序后结果集的第一条数据。 原始的SQL: select a.id from A a  left join B b on  a.id = b. id  where   a.userid = 'name' and rownum = 1 order by a.p; 当时的问题是,如果查询的结果里
sql中查询每组的最后一条数据
学号        分数                     测试时间 1               70              2011-10-21 20:21:32 1              85                2011-12-10 10:19:02 2              49               2012-02-11 13:32:45 2
SQL查询重复数据,只显示一条sql语句
2种方法, 1.在select后面加 distinct 可以过滤重复的数据, 点评:在海量数据下效率低 2.利用group by ,把查询到的字段都放在group by后面,点评:效率比distinct高,使用也比distinct麻烦点!sql语句: select name from ZonCanKu group by name
SQL :多条记录取最前面一条或根据条件任取N条
--按某一字段分组取最大(小)值所在行的数据 /* 数据如下: name val memo a    2   a2(a的第二个值) a    1   a1--a的第一个值 a    3   a3:a的第三个值 b    1   b1--b的第一个值 b    3   b3:b的第三个值 b    2   b2b2b2b2 b    4   b4b4 b    5   b5b5b5b5b5 */ -...
Oracle分析函数系列之first_value/last_value:在记录集中查找第一条记录和最后一条记录
[转自] http://blog.csdn.net/rfb0204421/article/details/7675911 注意:与max,min的区别,虽然也可以实现,但只是针对数字字段. 1、初始化原始数据: create table test (id number(2), name varchar2(10), salary number(6,2)); insert int
SQL学习笔记[7] - 怎样在一个表里筛选出每一个对象的时间最新的一条记录
怎样在一个表里筛选出每个对象的时间最新的一条记录
abap 取数排序之后怎么取第一行
用索引读取 单行 要用索引从 内表中读取 单行,请使 用 READ 语句,用法 如下: 语法 READ TABLE [INTO ] INDEX . 用 INTO 选项指定目 标区域 。 如果表格有 表头行,可 以忽略 INTO 选项。这样 ,表格工作 区域就成了 目标区域。 系统用索引 从表格 中读取行。 这比用关键 字访问表格 要快(参见 读取有关键字的单行 )。 如果找到有 指定索引的
Oracle 查询出来的数据取第一条
select * from (select * from <table> order by <key>) where rownum=1;select * from (select * from <table> order by <key> desc) where rownum=1;
只取数据库中出现的满足条件的第一条记录
表的设计模式如下: 运行之后就会发现表明出现很多重复的,而我们实际需要的只是需要一个。 这个时候我们可以用到函数select1. select1() 函数说明: 从数据集中按顺序检索到符合过滤条件的第一条记录,返回其selectExp值 语法: datasetName.select1(selectExp{,filterExp{,rootGroupExp}}) 参数说明: selec
Sql Server 查询多条重复数据 删除并保留一条
总是不会查重和删除多余数据 delete sysdba.PRODUCT from sysdba.PRODUCT a where exists (select Name,ACTUALID from sysdba.PRODUCT b where a.name=b.name and a.ACTUALID = b.ACTUALID group by Name,ACTUALID havin
SQL 获取每一组第一条记录
根据分组取出每个分组的第一条记录数据 1.先将数据分组并对每一组进行排序; over(partition by 分组字段 order by 排序字段) 2.根据需要获取序号1的数据 SELECT * FROM ( SELECT RECEIVE_ID,LINE_CD,REC_TIME ,ROW_NUMBER() over(partition by LINE_CD order
sql取记录中的第一条或是最大的一条
--按某一字段分组取最大(小)值所在行的数据 /* 数据如下: name val memo a    2   a2(a的第二个值) a    1   a1--a的第一个值 a    3   a3:a的第三个值 b    1   b1--b的第一个值 b    3   b3:b的第三个值 b    2   b2b2b2b2 b    4   b4b4 b    5   b5
Oracle获取最后一条,第一条数据(按时间获取第一条和最后一条数据)
假设有如下场景: 电表,大家都知道电表读数并不是真正的耗电量,真正耗电量=此次读数-上一次读数 电表设计如下: SQL语句如下,使用Oracle的FIRST_VALUE()和LAST_VALUE()函数实现: SELECT DISTINCT LAST_VALUE (E_VALUE) OVER (PARTITION BY E_CODE ORDER BY E_DATE ROWS...
sqlserver 查询数据表中每个类别最新的一条记录
本文此处所规定的类别为省份ID,原始表如下图所示: 所使用SQL语句为: select a.* from tbl_MaterialPice a,(select province_ID,max(price_time) price_time from tbl_MaterialPice group by province_ID) b where a.price_time = b
SQL SERVER 取出 一张表中的每个分组中 的第一条数据 ,第一条数据是按照某种排序规则进行排序取的第一条
如题,方法很简单,只要一句话就可以解决: SELECT * FROM ( SELECT  *,  ROW_NUMBER() OVER (PARTITION BY LineCode ORDER BY OnTime DESC) NewIndex         FROM dbo.TPBOM  WHERE LineCode IN    (SELECT LineCode FROM dbo.TSho
sqlserver数据库如何每时/每天/每月/每年任取一条数据
sqlserver数据库如何每时/每天/每月/每年任取一条数据
mysql修改最后一条记录&删除第一条记录
//修改最后一条记录UPDATE userinfo set userid=55 WHERE 1 ORDER BY userid DESC LIMIT 1//删除第一条记录delete from userinfo where 1 order by userid limit 1mysql sql 修改表名 建立外键 修改列名 删除列 --重命名表rename table t_softwarep
SQL 一对多关系检索多行中的一条记录
今天工作中,需要从多表抽取数据。抽取逻辑就是在一对多关系表中,需要检索符合条件的多行中的一条记录。 DEMO如下: A表: B表: 具体的抽取的逻辑: 所有的A_name对应的 B_name中的第一个B_name记录。比如抽取 所有课程的第一位授课教师的名字 SQL: select A.A_name, B.B_name from a in
MySQL 更新符合查询条件的第一条记录、更新根据创建时间降序排列的第一条记录
update table_name set col_1=xxx where col_2=yyy limit 1 更新符合指定条件的第一条记录 UPDATE table_name set col_1=1112 WHERE id=(select temp.id from (select id from table_name WHERE col_2=xxx order by create_tim...
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 如何游戏开发出视频界面 云计算数据