如果你想直接在SQL查询语句中这么做,很遗憾地告诉你,不可以,你只能是列出你想要的所有列,不过有几个简单的方法可以帮你快速得到这个SQL,
通过Mangement Studio得到表的所有列,然后删除你不想要的列。
当然还有一些其他方法,你可以自己研究一下,主要是帮助你快速得到查询语句。
如果你是在存储过程中的话,你还可以通过拼SQL的方式得到你想要的效果,代码如下:
declare @cols varchar(max), @query varchar(max)
SELECT @cols = STUFF
(
(
SELECT DISTINCT '], [' + name
FROM sys.columns
where object_id = (
select top 1 object_id from sys.objects
where name = 'Customers'
)
and name not in ('Fax', 'Phone')
FOR XML PATH('')
), 1, 2, ''
) + ']'
select @query = 'select ' + @cols + ' from Customers'
print @query //这也是一种得到你想要列的SQL的方法
exec (@query)
无论怎么样,都没有一种比较简洁或短的SQL写法,让你直接从查询结果中过滤掉某一或某些列,只能是列出你想要的列。
追问非常感谢你的回答,虽然没采纳你的答案,依然谢谢你了!