MYSQL在子查询中选择具有名称的多列

时间:2015-12-03 17:18:56

标签: mysql sql

我希望实现这样的目标:

#Statement for selecting specific Columns
Select (Select column_name from information_schema.COLUMNS where column_name like 'code%' and table_name like 'databasewithmanymanycolumns') from databasewithmanymanycolumns;

(这个例子不起作用,它只是用来解释我想要实现的目标) 我想在子查询中选择具有名称的列而不明确地必须为每一列命名,因为该表太多而无法明确地命名每个人。

是否有可以达到此目的的声明?有其他声明的解决方法吗?

非常感谢你的帮助, 亲切的问候,SirSandmann

1 个答案:

答案 0 :(得分:1)

我认为您尝试做的事情的唯一方法是使用动态SQL;返回第一个查询的结果,并使用它来构建第二个查询。

一定要手工编写查询 - 我常常在需要返回的表格非常宽的情况下执行,它更快,更不容易出错。

但我当然不会做我认为你在现场应用程序中尝试做的事情;它打开了一个性能和维护问题的世界。编写您实际需要的查询并保存以供使用,或重构数据库以删除这个相当不寻常的要求,或重新考虑您实际上想要做的事情。

如果我误解了您的要求,请随时扩展您的问题,我们都可以再试一次: - )