select max(id) from tablename group by col1,col2,... 这个sql语句返回的结果集里有几个值?是什么意思

作者&投稿:羽狠 (若有异议请与网页底部的电邮联系)
sql语句,select max(id) from table 这样只能得到最大的id值,怎么写可以得到最大id这一条数据所有值~

具体sql语句:select * From table where id = (select max(id) from table))
sql 语句 获取一列中的最大值使用MAX() 函数:
1.MAX 函数功能:返回一列中的最大值。NULL 值不包括在计算中。
2.SQL MAX() 语法:SELECT MAX(column_name) FROM table_name
注释:MIN 和 MAX 也可用于文本列,以获得按字母顺序排列的最高或最低值。
3.例表格:aaa,表结构如图

1, 完全相同的数据,需要先区分出每条数据才能进一步操作。
添加自增长列以用编号区分不同的数据行。
alter table 表名 add id int identity(1,1)
-- 添加自增长列 id
2,根据编号删除数据
delete from table a
where id not in (select max(id) from table where b a.col1=b.col1 and a.col2=b.col2 )
-- 保留相关数据行中,编号最大的数据行
3, 删除自增长列
alter table 表名 drop column id
-- 删除临时增加的自增长列
用一条sql语句删除表中所相同的记录,删除重复数据
具有主键的情况 :
1.具有唯一性的字段 id(为唯一主键)
delete table
where id not in
(
select max(id) from table group by col1,col2,col3...
)
group by 子句后跟的字段就是你用来判断重复的条件,如只有col1,
那么只要col1字段内容相同即表示记录相同。
2.具有联合主键
假设col1+','+col2+','...col5 为联合主键
select * from table where col1+','+col2+','...col5 in (
select max(col1+','+col2+','...col5) from table
where having count(*)>1
group by col1,col2,col3,col4
)
group by 子句后跟的字段就是你用来判断重复的条件,
如只有col1, 那么只要col1字段内容相同即表示记录相同。
3.判断所有的字段
select * into #aa from table group by id1,id2,....
delete table
insert into table
select * from #aa

返回一个值,是字段ID 的最大值,即最大的ID。

一个!

1个。

一般就1个!
也就是返回最后的记录集。


尼木县15324193607: 请高人把这两个mysql数据库的sql语句合并成一个. -
威阀兰普: update aaa set url=concat( select a.slug from (SELECT slug from aaa where id = (SELECT max(id) FROM aaa)) a,':',url); 本身mysql 是不建议直接先查询本表再更新本表的,但是这种方法可以绕过去,你可以试下

尼木县15324193607: sql语句,select max(id) from table 这样只能得到最大的id值,怎么写可以得到最大id这一条数据所有值 -
威阀兰普: 具体sql语句:select * From table where id = (select max(id) from table)) sql 语句 获取一列中的最大值使用MAX() 函数:1.MAX 函数功能:返回一列中的最大值.NULL 值不包括在计算中.2.SQL MAX() 语法:SELECT MAX(column_name) FROM table_name 注释:MIN 和 MAX 也可用于文本列,以获得按字母顺序排列的最高或最低值.3.例表格:aaa,表结构如图

尼木县15324193607: select max(ID)+1 ReceiveDetails -
威阀兰普: max(ID)是当前最大值,+1是为了获取下一个该分配的值.例如当前最大为100,下一个分配的值就是max(ID)+1=101

尼木县15324193607: asp 查询句中用到select Max(ID) from table...如何在结果中显示好ID?试了用<%=rs("ID")%>不可以. -
威阀兰普:或 sql="select Max(ID) as id from tablename group by ONEDAT,[ONETIM] having count(*) > 1)" 就能用

尼木县15324193607: ORACLE sqL 查询一张表中,字段id最大值的那条记录. table表里有id,和time两 select max(id)form table -
威阀兰普: select time from table t1 where not exists (select 1 from table where id > t1.id)或者 select time from table where id in (select max(id) from table)

尼木县15324193607: select max(ID) 查询char类型的最大值,为什么获取到的最大值是SP9不是SP10啊,我的数据表ID列如下: -
威阀兰普: 字符比较是按位取值,p后面最大值就是9了,可以先转换一下数据类型 select max(convert(int,substring(id,3,len(id)))) from tb

尼木县15324193607: MYSQL中如何获取最后一条记录 -
威阀兰普: 先在主表中插入记录,然后获得自动生成的id,以它为基础插入从表的记录. 这里面有个困难,就是插入主表记录后,如何获得它对应的id. 通常的做法,是通过“select max(id) from tablename”的做法,但是显然这种做法需要考虑并发的情况,需要在事务中对主表加以“X锁“,待获得max(id)的值以后,再解锁.

尼木县15324193607: 如何获取access2003字段说明? -
威阀兰普: 应该可以从系统表中读出吧: 1、显示系统表 工具 - 选项 - 视图选中隐藏对象,系统对象2、增加用户权限 工具 - 安全 - 用户与组权限选中你要查看的系统表,增加相应的权限3、代码访问 1 Dim conn As New OleDbConnection("Provider=...

尼木县15324193607: mybatis 取得id列最大值 select max(${id}) from stu 报错 -
威阀兰普: max会自动转化成数字

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网