sql - 这可以用单个 SQL 查询来完成吗

标签 sql mysql

我正在使用 MySQL。我有一张 table

Type SubType
1 1
1 5
1 6
1 8
2 2
2 3
3 1
3 2
3 3

每种类型都有一定数量的子类型。对于一个类型中的每个子类型,下一个类型中都有一个对应的子类型:

(1,1) => (2,2)
(1,5) => (2,3)
(1,6) => (2,2)
(1,8) => (2,3)
(2,2) => (3,1)
(2,3) => (3,2)

如果您还没有看到模式,这里是:您按子类型对当前类型和下一个类型进行排序,然后在下一个类型中,您将获得与当前类型中当前子类型相同位置的子类型。如果当前类型中的子类型多于下一个类型中的子类型,则您绕过并从下一个类型中的第一个子类型开始。

是否可以构造一个查询,该查询采用当前类型和子类型并返回下一个类型中的相应子类型?

最佳答案

不确定mysql...在oracle中有LEAD和LAG函数,以及CONNECT BY。

我对你的描述有点困惑我必须说:)

关于sql - 这可以用单个 SQL 查询来完成吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2925776/

相关文章:

mysql - 保存/序列化/转储已删除的对象,然后再次恢复

mysql - 如何从 Redhat Linux 中完全删除 MySQL 8,以便安装 MySQL 5?

php - Django + XAMPP on Mac (2002, "Can' t 通过套接字 '/tmp/mysql.sock' (2)"连接到本地 MySQL 服务器")

python - 我可以使用什么语言来快速执行此数据库汇总任务?

PHP MySQL 发票 Material

sql - Oracle PL/SQL Query Order By 问题与 Distinct

MySQL - 如何使表反对称

mysql - 仅返回最大值大于指定值的行

php - 合并两个 MySQL 查询并将结果相减

java - 如何从 Android 将印地语文本存储在 MySQL 中?