Можете ли вы упорядочить значения по-разному столбцам в инструкции вставки? - PullRequest
0 голосов
/ 16 апреля 2009

Есть ли способ назвать или указать ваши значения в операторе вставки? например.

declare @temp TABLE
(
    column1 int,
    column2 int,
    column3 int
)

insert @temp(column1, column2, column3)
Select 1 as column1,3 as column3, 2 as column2

select * from @temp

вернет 3 в column2, когда я хотел бы 2 в column2 и 3 в column3.

EDIT

Я пытаюсь написать код динамического отображения SQL. Различные столбцы отображаются на наши данные от каждого поставщика. Поэтому я планировал написать оператор вставки, чтобы пойти и извлечь все столбцы поставщиков из таблицы сопоставления. Однако я не могу быть уверен, что столбцы выйдут из таблицы сопоставления в правильном порядке.

Ответы [ 3 ]

2 голосов
/ 16 апреля 2009

вставить в mytable (col1, col3, col2) значения (: val1,: val3,: val2)

1 голос
/ 16 апреля 2009

Различные столбцы соответствуют нашим данным от каждого поставщика.

Напишите представление для каждого поставщика, которое отображает таблицы каждого поставщика в ваш общий формат.

Делайте ваши вставки из каждого вида или объединение видов.

1 голос
/ 16 апреля 2009

Почему бы просто не переименовать столбцы? Может я что-то упустил?

INSERT INTO table
(column-1, column-2, ... column-n)
VALUES
(value-1, value-2, ... value-n);

Позволяет указать имя столбца и соответствующие значения в том же порядке.

Редактировать Порядок вывода столбцов точно соответствует порядку, указанному в предложении select. Я снова пропускаю что-то очень большое.

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