Mysql select from table 移动一列

标签 mysql sql

我有一个 MySQL 表,如下所示:

-----
| 1 |
-----
| 3 |
-----
| 7 |
-----
| . |
-----
| . |
-----
| . |
-----
| n |
-----

是否可以从这个表中选择这样的东西:

----------
| 1 || 3 |
----------
| 3 || 7 |
----------
| 7 || . |
----------
| . || . |
----------
| . || . |
----------
| n || n-1 |

最佳答案

我猜,下面的查询最接近你想要的 MySQL

mysql> select * from num;
+------+
| a    |
+------+
|    1 |
|    3 |
|    7 |
|   11 |
|   17 |
+------+

mysql> select @prev:=a FROM num ORDER BY a ASC LIMIT 1,1;
+----------+
| @prev:=a |
+----------+
|        3 |
+----------+
1 row in set (0.00 sec)

mysql> select @prev, t1.a, @prev:=t1.a from num t1;
+-------+------+-------------+
| @prev | a    | @prev:=t1.a |
+-------+------+-------------+
|     3 |    1 |           1 |  <= 1st row is dummy
|     1 |    3 |           3 |
|     3 |    7 |           7 |
|     7 |   11 |          11 |
|    11 |   17 |          17 |
+-------+------+-------------+
5 rows in set (0.00 sec)

mysql> select MAX(a), NULL FROM num;
+--------+------+
| MAX(a) | NULL |
+--------+------+
|     17 | NULL | <= last row founded here
+--------+------+
1 row in set (0.00 sec)

关于Mysql select from table 移动一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20245190/

相关文章:

mysql - 我可以让三个数据库的三个mySQL三个字段一起交互吗?

php - 带有 date_add 的 Mysql unix_timestamp 没有给出正确的时间戳

mysql - homebrew.mxcl.mysql.plist launchctl加载错误

sql - 在 Postgres 中生成 UUID

mysql - 为什么我不断收到 'Incorrect Syntax near ' Select'.期待 Set' 错误?

mysql - 尽管有索引,但带有 GROUP BY 查询的 DISTINCT COUNT 速度太慢

mysql - INNER JOIN ON 多个属性不起作用

sql - Informix 窗口函数范围子句的行为类似于行子句

mysql - SQL Join 条件优化

mysql - 从一行中选择两个不同的值