SQL查询以选择除两列之外的表中的所有列

时间:2009-12-03 10:34:18

标签: sql ms-access

我有一个ms-access表,列名为A到H

TableA 

A   B  C  D  E  F G  H

如何编写查询以选择除B和F列之外的所有列。查询结果应为

A C D E G H

我们有这样的事吗

select * from TableA except B, F ?

7 个答案:

答案 0 :(得分:3)

不,我们没有。你必须使用

SELECT A, C, D, E, G, H 
FROM TableA

如果你问我,这很好。 SELECT *很邪恶。

答案 1 :(得分:2)

不,你坚持

select a, c, d, e, g, h from TableA

答案 2 :(得分:1)

select A, C, D, E, G, H from TableA

答案 3 :(得分:1)

我不确定,但 肯定 更好地明确指定要选择的列。这使您对表的任何潜在更改都更容易使用,因为您可以使用别名等。

答案 4 :(得分:1)

select A, C, D, E, G, H from TableA

或创建一个视图并从中进行选择,如下所示:

CREATE VIEW vTableA
as   
select A, C, D, E, G, H from TableA

答案 5 :(得分:0)

你不能这样做。它是'*'或只是您指定的字段。这是一个大问题吗?或者只是你想要一些“整洁”的东西?

答案 6 :(得分:0)

屁股有点痛苦,我在这个论坛上寻找另一种方法来做到这一点,但是,是的,你已经卡住了每一列的定义。但是,您可以通过执行以下操作来获取所有列:

select ',[' + column_name + ']'
from information_schema.columns
where table_name = 'your_table_name'

通过这种方式,您可以快速排除您不想要的列。当你有50多个专栏时,它特别有用。