SQL: найти первый столбец первой строки в таблице Sql - PullRequest
2 голосов
/ 16 октября 2010

У меня есть таблица базы данных UserTable

CREATE TABLE [UserTable](
    [ID] [int] NULL,
    [Name] [nvarchar](50) NULL,
    [City] [nvarchar](50) NULL
) ON [PRIMARY]

эта таблица имеет следующие данные

ID             Name                     City
----------- --------------------------------
1             Vijendra                  Delhi
2             Singh                     Noida
3             Shakya                    New Delhi

Теперь вопрос, есть ли способ узнать первый столбец первой строки без указания столбцаname (я не хочу использовать любое имя столбца), это то же самое, что найти матричную нотацию, это будет [1,1] -ое местоположение.

Я могу найти первый столбецпервая строка с

Select Top 1 City from UserTable 

Я не хочу использовать имя столбца (Город).

Возможно ли это?Если да, пожалуйста, скажите мне, как мы можем этого достичь.

Ответы [ 3 ]

0 голосов
/ 07 июня 2011

Быстро вы можете сделать это, написав некоторый код и используя динамический sql:

    declare @field varchar(100), @SQL varchar(500)
    set @field = (SELECT top 1 COLUMN_NAME FROM INFORMATION_SCHEMA.Columns WHERE TABLE_NAME = 'UserTable')
    set @SQL = 'select top 1 ' + @field + ' from UserTable'
    exec (@SQL)

Конечно, может быть, есть более умные способы, но это только начало

Вы также можете обернуть все это в хранимую процедуру, чтобы сделать ее более удобной и читаемой

Надеюсь, это поможет

0 голосов
/ 07 июня 2011

См. sql select с именем столбца, например , для выбора имен столбцов из information_schema.columns

Также статья Выполнение SELECT без имен столбцов , которое получает столбцы 3, 4 и 6.

0 голосов
/ 06 июня 2011

Как правило, в реляционных базах данных отсутствует концепция упорядочения строк или столбцов, которые не указаны пользователем в данном запросе.

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