select * from dual connect by rownum <=length(select * from 表) 改为pgsql语法
时间: 2024-02-17 18:02:12 浏览: 33
在 PostgreSQL 中,可以使用 generate_series 函数来生成序列。因此,将该查询转换为 PostgreSQL 语法的方式如下:
```sql
SELECT * FROM generate_series(1, length((SELECT * FROM 表)))
```
其中,generate_series 函数生成了一个从 1 到表的行数的序列,然后通过 SELECT 查询语句获取表的行数。最终,使用这个序列作为连接条件,返回对应的行。
相关问题
select regexp_substr((select sst.param_value from 表 sst,'[^,]+',1,rownum) from dual connect by rownum <=1 改为pgsql语法
在 PostgreSQL 中,可以使用正则表达式函数 `regexp_matches` 来实现类似 `regexp_substr` 的功能。下面是将给定的 SQL 语句转换为 PostgreSQL 语法的示例:
```
SELECT regexp_matches((SELECT sst.param_value FROM 表 sst LIMIT 1 OFFSET 0), '[^,]+', 'g');
```
其中,`LIMIT 1 OFFSET 0` 相当于 Oracle 中的 `ROWNUM <= 1`,表示只返回一行结果。`'[^,]+'` 是 PostgreSQL 中的正则表达式,表示匹配非逗号字符的连续序列。`'g'` 参数表示全局匹配,即匹配所有符合条件的子串。
需要注意的是,PostgreSQL 中的 `regexp_matches` 函数返回的是一个数组,如果只需要取第一个匹配结果,可以使用数组下标 `[1]`,即:
```
SELECT regexp_matches((SELECT sst.param_value FROM 表 sst LIMIT 1 OFFSET 0), '[^,]+', 'g')[1];
```
SELECT rownum page, 100 number FROM ( SELECT rownum, 'dummy' FROM dual CONNECT BY level <= 10183 ) WHERE rownum <= ROUND(10183/100,0)*100 报ORA-00923: 未找到要求的 FROM 关键字
这个错误可能是因为你的 SQL 语句缺少了必要的 FROM 关键字。请检查你的 SQL 语句并确保它包含正确的语法和必要的关键字。在你的 SQL 语句中,你使用了子查询语句,但没有在子查询中指定 FROM 关键字。你可以尝试将子查询中的 SELECT 语句用括号括起来,并在括号后面指定 FROM 关键字,如下所示:
```
SELECT rownum page, 100 number
FROM (
SELECT rownum, 'dummy' FROM dual CONNECT BY level <= 10183
)
WHERE rownum <= ROUND(10183/100,0)*100
FROM dual;
```
这应该可以解决你的问题。如果你仍然遇到问题,请提供更多的上下文信息,以便我可以更好地帮助你解决问题。
相关推荐
![par](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)