Марсело прав на 100% - в истинной реляционной базе данных порядок набора результатов никогда не гарантируется.Тем не менее, есть некоторые базы данных, которые всегда возвращают наборы в порядке.
Так что, если вы готовы рискнуть, вот одно из решений.Создайте две таблицы с ключами автоинкремента следующим образом:
CREATE TABLE Sets (
id integer identity(1,1)
, val decimal
)
CREATE TABLE SetY (
id integer identity(1,1)
, val decimal
)
Затем заполните их значениями X и Y:
INSERT INTO Sets (val) (SELECT * FROM X)
INSERT INTO SetY (val) (SELECT * FROM Y)
Затем вы можете сделать это, чтобы получить ответ:
SELECT X.ID, X.Val, Y.Val, X.val-Y.val as Difference
FROM Sets X
LEFT OUTER JOIN SetY Y
ON Y.id = X.ID
Сначала я бы скрестил пальцы!Если есть какой-то способ, которым вы можете получить правильный ключ на вашем столе, пожалуйста, сделайте это.
Приветствия,
Даниэль