sql查询 如何获取查找某ID的一条记录在表中是第几条记录
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql查询 如何获取查找某ID的一条记录在表中是第几条记录相关的知识,希望对你有一定的参考价值。
sql查询 如何获取查找某ID的一条记录在表中是第几条记录
请高手指点一下!先谢了!
我是用ACCESS的
是要查出指定ID的记录是在当前表中的第几条记录!
如果添加字段那如果有删除记录那在表中的第几条记录就变了
可以用row_number函数,如以下数据:
ID NAME
1 张三
3 李四
5 王五
7 赵六
如查询王五这条数据在数据库里是第几条,可以这样。
select t.rn from(select *,row_number() over(order by id) rn from 表名) t
where t.name=\'王五\'
结果会显示为3,也就是第三条数据
SELECT COUNT(*) FROM 表 WHERE ID<=ID的值本回答被提问者采纳 参考技术C 如果是Oracle
Select rownum
from <tablename>
where <tablename>.id=<ID 值>
SQL查询用户在表中有一条记录但没有另一条[关闭]
【中文标题】SQL查询用户在表中有一条记录但没有另一条[关闭]【英文标题】:SQL Query User has one record in the table but not another one [closed] 【发布时间】:2013-09-19 13:48:04 【问题描述】:我有一个包含员工类型代码的表,我正在尝试返回所有没有特定 LeaveType 的用户
示例:
EmployeeNO LeaveType
---------------------
1111 Personal
1111 Vacation
1111 Sick Bank
2222 Personal
2222 Vacation
3333 Personal
3333 Vacation
所以我想查询所有用户并返回Sick Bank
中的用户列表和不在的用户列表
【问题讨论】:
【参考方案1】:获得病假银行
SELECT * FROM table1 WHERE leaveType = 'Sick Bank'
获得非病假银行
SELECT * FROM table1 WHERE leaveType <> 'Sick Bank'
【讨论】:
非 Sick Bank 查询将错误地返回用户 1111 两次,即使它有 Sick Bank 行。 我想这张桌子有员工休假的日子,因此,尽管员工去过两次,但应该不止一次返回。 但如果重点是只提取不同的行,他可以使用 SELECT DISTINCT【参考方案2】:让员工获得特定休假类型是困难的
select employeeNO from table1 where leaveType = 'Sick Bank'
如果员工有多个休假类型,则使用 的查询可能会为员工返回多行,即使他们确实有“病假银行”行。
select employeeNO from table1
where employeeNo not in (select employeeNO from table1 where leaveType = 'Sick Bank')
【讨论】:
我假设这将是一个相对较大的表,因此使用 where Not in 将是,其中 N 是行数,(N * N) - N 比较。 列出了所有没有病假银行代码的员工。谢谢以上是关于sql查询 如何获取查找某ID的一条记录在表中是第几条记录的主要内容,如果未能解决你的问题,请参考以下文章