2015-10-06 92 views
0

有没有办法检索不返回数据的查询的列名? 此查询的结果将为空。 有没有办法如何找到没有结果的列名?如何从空MySQL选择查询结果中检索列名

请注意,我知道使用DESCRIBE的解决方案,并从information_schema.columns中选择column_name,其中table_name ='person'; 但我需要一个更灵活的解决方案,以适应这些多列查询。

请注意,我仍然使用原始的PHP MySQL扩展(所以没有MySQLi,也没有PDO)。

回答

0

您应该, 选择COLUMN_NAMEINFORMATION_SCHEMACOLUMNS 其中TABLE_SCHEMA ='yourdb' AND TABLE_NAME ='yourtablename';

1

执行下面的命令,如果你以前的查询结果为空

SHOW columns FROM your-table; 

有关详情,请this.

0

我不知道这是否会满足你,但你可以做到这一点

SELECT *, COUNT(*) FROM table; 

它将返回null值(除了最后一列,您可以忽略)如果查询是空的,您将能够访问所有专栏。这是不正确的做法,从INFORMATION_SCHEMA选择名称将是更好的解决方案。 请注意,结果汇总后,如果有结果,您需要使用GROUP BY以获得更多结果。