zoukankan      html  css  js  c++  java
  • GBase存过--工作实战

    --GBase用的是mysql的语法,这是我目前工作中写过的一个存过,用来查询库里所有表有没有重复的数据

    CREATE DEFINER="osg_dwods"@"%" PROCEDURE "get_table_repeat_data"(IN in_database_name varchar(30))
    begin
    declare v_columnValue varchar(100);
    declare v_count integer;
    declare v_tableName varchar(100);
    declare v_columnId varchar(50);
    declare v_sql varchar(1000);
    declare done int default 0;

    declare rec cursor for
    select t.table_name,t.column_name
    from `information_schema`.columns t
    where t.table_schema = in_database_name
    and t.ordinal_position = 1;

    declare continue handler for not found set done = 1;

    truncate table gbase_table_repeat;
    open rec;
    out_loop:
    loop
    fetch next from rec into v_tableName,v_columnId;
    if v_columnId is not null then
    set v_sql = concat('insert into osg_common.gbase_table_repeat (table_name,column_name,column_value,count)
    select ''',v_tableName,''',''',v_columnId,''',t.',v_columnId,',count(1) from ',in_database_name,'.',v_tableName,' t group by t.',v_columnId,' having count(1)>1');
    set @vsql = v_sql;
    prepare stmt from @vsql;
    execute stmt;
    deallocate prepare stmt;
    end if;
    if done = 1 then
    leave out_loop;
    end if;
    end loop;
    close rec;
    end

  • 相关阅读:
    简单小巧的跨平台共享内存代码
    调试发行版程序 (二)
    休息日公园独步偶得
    Minimum Depth of Binary Tree
    LeetCode Length of Last word
    黑书 折纸痕 uva 177
    Palindrome Partitioning II leetcode
    Acumem ThreadSpotter
    C++ string int 转换 split
    Valid Palindrome Leetcode
  • 原文地址:https://www.cnblogs.com/cq-blogs/p/10364187.html
Copyright © 2011-2022 走看看