SQL空查询结果

时间:2014-05-19 14:12:32

标签: sql database select

想象一下,我有一张像这样的表:

CREATE TABLE marcas
(
  id_marca integer,
  marca character varying
));

我想进行查询,但每个字段的值都为空。

我知道可以解决这个问题:

SELECT '' as id, '' as marca FROM marcas

问题是我有很多桌子,其中一些有超过100个场...... 我需要一个SQL语句,它可以获取表的所有行字段但是空并且很简单......

3 个答案:

答案 0 :(得分:4)

以下是在每列中获取NULL的方法。它使用left outer join的条件失败:

select t.*
from (select 1 as val
     ) v left outer join
     table t
     on 1 = 0;

编辑:

如果您想在Access中执行此操作,那将是一项挑战。表达式select 1 as val不起作用。以下应该:

select t.*
from (select max(1) as val
      from table as t 
     ) as v left outer join
     table as t
     on val = 0;

这也适用于Postgres,但它有不必要的开销。

答案 1 :(得分:0)

如果您使用

SELECT * FROM MARCAS

您将获得

的结果集

===================

ID_MARCA | MARCA

===================

这将返回零结果,但它将显示查询表中的所有列。我无法完全理解你想要达到的目标。

答案 2 :(得分:0)

如果您只想要列列表而没有返回任何行

SELECT TOP 0 * FROM marcas