在几个表中搜索列名,而不是整个数据库 SQL

Posted

技术标签:

【中文标题】在几个表中搜索列名,而不是整个数据库 SQL【英文标题】:Search a column name in a few tables,not the whole database SQL 【发布时间】:2015-04-01 22:17:35 【问题描述】:
SELECT something 
FROM table1, table2, table 
WHERE tableColumn = "tableName"

【问题讨论】:

什么?您是否要求所有具有特定列名的表?您是否需要一个代码生成器来查找具有特定列名的所有表,然后对这些表进行查询?您是否要求连接其中 table1、table2 和 table3 在列中都具有相同的值? "您是否要查询所有具有特定列名的表?"是的 ***.com/a/9180068/2589202 【参考方案1】:

如果有必要,你可以对模式表做一些疯狂复杂的事情,但这应该在紧要关头起作用:

select <something> 
    from table1
    where 
        tableColumn = "tableName"
union all
select <something>
    from table2
    where 
        tableColumn = "tableName"
union all
select <something>
    from table3
    where
        tableColumn = "tableName"

只需确保从联合中的每个查询中选择相同类型的列即可。

【讨论】:

以上是关于在几个表中搜索列名,而不是整个数据库 SQL的主要内容,如果未能解决你的问题,请参考以下文章

用sqlserver2008创建了1个表,里面有几个属性,其中一个属性我不想要了,怎么删除,

在所有表中搜索多个值

如何为复杂的 sql 查询获取中间数据。 PostgreSQL

SQL如何从有条件的2个表中获取数据

SQL中的列名上加中括号是啥意思

SQL从2个表中添加值