Как я могу отобразить только определенные столбцы из схемы INFORMATION_SCHEMA.COLUMNS
?
Бывший:
SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'rate_Structure'
ORDER BY ORDINAL_POSITION
Возврат:
+-------------+
| |
| COLUMN_NAME |
+-------------+
| a |
| b |
| c |
| d |
| e |
+-------------+
Как показать только столбцы a и e?
Вы должны узнать, как работает SQL. Это такой же запрос, как и любой другой, поэтому вы фильтруете результаты так же, как фильтруете результаты для любого другого запроса.
Вам нужно добавить дополнительные условия, например:
SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'rate_Structure'
AND data_type = 'int' -- condition to get only specific columns
ORDER BY ORDINAL_POSITION;
OP хотят столбцы a
и e
независимо от типа данных
Добавьте еще одно условие где
SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'rate_Structure' and COLUMN_NAME in ('a','c')
ORDER BY ORDINAL_POSITION
Это столбец e
вместо c
how to Show only a and e columns
Просто, отфильтровав результаты в предложении WHERE
как
SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'rate_Structure' and COLUMN_NAME in ('a','e')
-- You can also use: and (COLUMN_NAME = 'a' or COLUMN_NAME = 'e')
ORDER BY ORDINAL_POSITION
Вам нужно добавить условие, чтобы получить то, что вам нужно, and COLUMN_NAME in ('a','e')
вернет только COLUMN_NAME
со значением 'a'
или 'e'
.
Вы можете использовать INFORMATION_SCHEMA.COLUMNS, как показано ниже
USE Test
GO
SELECT * FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'SalesTerritory'
AND COLUMN_NAME = 'Region'
Возможный дубликат Выберите определенные строки и столбцы из базы данных SQL