Измените * в SELECT, чтобы показать все столбцы - PullRequest
1 голос
/ 01 ноября 2019

Я использую SQL Server Management Studio.

Допустим, у меня есть таблица с 100 полями, и я хочу показать 75 из них, как я могу показать все столбцы, чтобы я мог простозакомментировать те, которые я не хочу? По сути, удалите * ...

Спасибо!

Ответы [ 2 ]

3 голосов
/ 01 ноября 2019

SSMS поддерживает инструмент GUI для него, но если вам не нравится GUI, то вы можете использовать приведенный ниже скрипт

declare 
    @table_name varchar(200) = 'Employees',
    @column_sql varchar(max) = 'select ';
select 
    @column_sql = @column_sql + 'T.[' + COLUMN_NAME  + '],'
from INFORMATION_SCHEMA.COLUMNS
where TABLE_NAME=@table_name;

select left(@column_sql,len(@column_sql)-1) + ' from ' + @table_name + ' T';

В NorthWind Employee Sample вы получите следующий результат:

select 
T.[EmployeeID],T.[LastName],T.[FirstName],T.[Title],
T.[TitleOfCourtesy],T.[BirthDate],T.[HireDate],
T.[Address],T.[City],T.[Region],T.[PostalCode],
T.[Country],T.[HomePhone],T.[Extension],T.[Photo],
T.[Notes],T.[ReportsTo],T.[PhotoPath] 
from Employees T
3 голосов
/ 01 ноября 2019

Вы можете открыть столбцы «папка» под таблицей в проводнике объектов и перетащить папку в окно запроса. Будет сгенерирован весь список столбцов с запятыми. Не очень хорошо отформатирован, так как отбрасывает все столбцы на одной строке, но работает.

Вы также можете использовать sys.columns, чтобы помочь. Это позволит вам скопировать и вставить результаты в окно запроса.

select name + ', '
from sys.columns
where object_id = object_id('YourTableName')

Существует также множество сторонних инструментов, которые могут делать подобные вещи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...