作业帮 > 综合 > 作业

英语翻译1.定义一个函数,能查出,字段为“macro”,需要统计macro值为yes的记录个数.--入参:用户名,表名,

来源:学生作业帮 编辑:灵鹊做题网作业帮 分类:综合作业 时间:2024/05/12 09:14:58
英语翻译
1.定义一个函数,能查出,字段为“macro”,需要统计macro值为yes的记录个数.
--入参:用户名,表名,字段名,条件要等于的值
create or replace function get_col_cnt(c_owner varchar2,
c_tab_name varchar2,
c_col_name varchar2,
c_value varchar2) return number as
cnt number(8);
c_sql varchar2(2000);
begin
c_sql := 'select count(1) from ' || c_owner || '.' || c_tab_name ||
' where ' || c_col_name || ' = ''' || c_value || '''';
execute immediate c_sql
into cnt;
return cnt;
end get_col_cnt;
2、查询结果
select t.table_name ,get_col_cnt(t.owner ,t.table_name ,'MACRO','YES')
from dba_tables t
where owner = 'YC'
and exists (select 1
from dba_tab_cols t1
where t.owner = owner
and t.table_name = table_name
and t1.column_name = 'MACRO');
其中YC为数据库名,sql server 2005
MACRO为字段名
表的名称很多,没有什么规律
英语翻译1.定义一个函数,能查出,字段为“macro”,需要统计macro值为yes的记录个数.--入参:用户名,表名,
哥们,你的自定义函数是oracle的,你数据库是sql server 2005的,你根本就没法执行