Работает ли автозаполнение MySQL Workbench?

Используя MySQL Workbench , когда я нажимаю CTRL + пробел, похоже, что есть функция автозаполнения (однако в поле автозаполнения нет элементов ). + ----- + --------- + | id | значение | + ----- + --------- + | 12 | 158 | | 15 | 346 | | 27 | 334 | | 84 | 378 | ...

Рассмотрим следующую таблицу:

SELECT id, value FROM table ORDER BY id ASC;
+-----+---------+
| id  | value   |
+-----+---------+
| 12  | 158     |
| 15  | 346     |
| 27  | 334     |
| 84  | 378     |
| 85  | 546     |
+-----+---------+

Столбец id автоматически увеличивается, но содержит пробелы. Столбец значение является числовым.

Я хочу посмотреть на увеличение значения с течением времени, установив значение по отношению к значению двумя строками выше. То есть для строки id = 85 Я хочу установить значение строки id = 85 (546) по отношению к значению строки id = 27 (334). Значение, которое должно быть вычислено для строки id = 85 , следовательно, 546/334 = 1,63473.

Это результат, которого я хочу достичь:

SELECT id, value, ...;
+-----+---------+---------------------+
| id  | value   | value/lag(value, 2) | (the syntax value/lag(value, 2) is made up)
+-----+---------+---------------------+
| 12  | 158     | NULL                |
| 15  | 346     | NULL                |
| 27  | 334     | 2.11392             | (334/158=2.11392)
| 84  | 378     | 1.09248             | (378/346=1.09248)
| 85  | 546     | 1.63473             | (546/334=1.63473)
+-----+---------+---------------------+

Как выполнить такое отставание в MySQL?

Обратите внимание, что столбец id содержит пробелы, поэтому простое соединение в одной таблице с t1.id = t2.id - 2 не сработает.

9
задан pilcrow 20 October 2013 в 14:42
поделиться