oracle 查询表用rowid排序 然后获取前50W
时间: 2023-09-10 21:07:52 浏览: 87
可以使用以下 SQL 语句来查询表用 `ROWID` 排序,并获取前50W的数据:
```sql
SELECT *
FROM (
SELECT t.*, ROWNUM rn
FROM (
SELECT *
FROM your_table
ORDER BY ROWID
) t
WHERE ROWNUM <= 500000
)
WHERE rn > 0;
```
其中,`your_table` 是你要查询的表名,`ROWID` 是 Oracle 数据库中每一行记录的唯一标识符,它可以用来进行排序。以上 SQL 语句先将表按 `ROWID` 排序,然后再对整个表进行了编号,最后只返回编号在 1 至 500000 之间的行,即前50W的数据。
相关问题
oracle 查询表用rowid排序 然后获取第50W至100W的数据
可以使用以下 SQL 语句来查询表用 `ROWID` 排序,并获取第50W至100W的数据:
```sql
SELECT *
FROM (
SELECT t.*, ROWNUM rn
FROM (
SELECT *
FROM your_table
ORDER BY ROWID
) t
WHERE ROWNUM <= 1000000
)
WHERE rn > 500000;
```
其中,`your_table` 是你要查询的表名,`ROWID` 是 Oracle 数据库中每一行记录的唯一标识符,它可以用来进行排序。以上 SQL 语句先将表按 `ROWID` 排序,然后再对整个表进行了编号,最后只返回编号在 500000 至 1000000 之间的行,即第50W至100W的数据。
oracle 以rowid排序 获取第100W至200W的数据
可以使用以下 SQL 语句获取第100W至200W的数据:
```
SELECT *
FROM (
SELECT a.*, ROWNUM rnum
FROM (
SELECT *
FROM table_name
ORDER BY rowid
) a
WHERE ROWNUM <= 2000000
)
WHERE rnum > 1000000;
```
其中,`table_name` 替换为你要查询的表名。这个语句的执行过程是将表中所有数据按 `rowid` 排序,然后使用 `ROWNUM` 限制条数,再使用子查询获取第100W至200W的数据。
阅读全文