You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle中如何筛选仅含一条记录的数据表

筛选Oracle中仅含一条记录的数据表

你可以基于原来的查询语句,通过子查询嵌套的方式添加过滤条件,直接筛选出记录数等于1的数据表。我还把原语句里的别名count改成了record_count,避免和SQL关键字冲突,也让代码更易读:

SELECT table_name, record_count
FROM (
    SELECT table_name, 
           TO_NUMBER(EXTRACTVALUE(XMLTYPE(DBMS_XMLGEN.GETXML('select count(*) c from '||owner||'.'||table_name)),'/ROWSET/ROW/C')) AS record_count
    FROM all_tables
)
WHERE record_count = 1;

如果只需要查询某个特定用户下的表,还可以在内层查询的all_tables后面加上WHERE owner = 'YOUR_SCHEMA_NAME',把YOUR_SCHEMA_NAME替换成你要指定的用户名就行,这样结果会更精准。

内容的提问来源于stack exchange,提问作者Mich

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 10:08:15