2015-10-18 4 views
0

Я хочу, чтобы запрос, как это:MySQL запросов, чтобы объединить два столбца в таблице

Предположим, если у вас есть таблица, как, где X и Y являются столбцы.

X Y 

A 1 
B 2 
C 3 
D 4 

и теперь вы хотите создать что-то вроде:

X Y Z 
A 1 2 
B 2 3 
C 3 4 
D 4 5 

В основном вы хотите создать пару со следующим значением строки здесь. Эти пары (Y, Z) подобны (1, 2), (2, 3), (3, 4). Как я буду писать запрос mysql для чего-то вроде этого? Любые указатели?

+1

Как вы собираетесь определить, "следующий" ряд ? Только буквальная следующая строка в таблице или следующая строка, отсортированная по некоторым значениям? –

+0

Предполагая, что в вашей таблице есть поле auto-increment 'id', определяющее порядок строк, в случае' ('D', 4) 'нет следующего значения строки. Как получилось 'Z = 5' для этого случая? –

+0

Не входите в автоматическое приращение, сопряжение должно выполняться только с помощью следующей строки. – python

ответ

2

Из чего я вижу, значение Z равно 1+value of Y.

Посмотрите на этот простой вопрос: -

SELECT x,y,(y+1) AS Z from test 

SQL скрипку: -

http://sqlfiddle.com/#!9/08b1e/2

enter image description here

+2

Предполагается, что следующая строка будет не просто увеличиваться. Сопряжение должно быть со следующей строкой. – python

+0

Следующая строка может быть приращением 1 или n. – python

+0

Это тоже легко. Однако ОП дал такие ценности, которые заставляли меня думать об этом решении. Подождем его. – Akshay

Смежные вопросы