我现在有100多个数据库,但是都是在一个服务器上。都是mysql的而且这些数据库的结构都是一样的。我现在想查询整个100多个数据库中的某个表的所有记录怎么写代码呢?一句sql多个数据库联合查询
我再补充一下 我的问题:有很多客服端数据库,结构都是一样的,每个数据库都一个表user table,表里有个name字段,现在的要求是一句sql查出所有的数据库名称+name字段:
table_schema        name
db1                         aaaaa
db2                         bbbbb
db3                         cccccc我的想法是查询mysql自带的数据库information_schema:
select table_schema ,column_name from information_schema.columns where table_schema in (select schema_name from information_schema.SCHEMATA) and
table_name='user' and column_name='name';数据库名是查出来了,但是这个name字段却查不来,name字段对应的不是aaaaa,bbbbb....等,而全是name。不知道有什么办法能够查询出字段的值而不是字段的名称 

解决方案 »

  1.   

    select 'db1' as db, name from db1.table1
    union all
    select 'db2' as db, name from db2.table1
    union all
    select 'db3' as db, name from db3.table1
      

  2.   

    1、打开 游标循环取值,生成SQL语句,再动态执行
    2、将上述内容用SELECT INTO OUTFILE导出,在EXCEL OR 其它编辑软件中修改一下,形成SQL语句再
    在MYSQL中执行。
      

  3.   

    字段的值是需要去表里面查询的  information_schama没有