概述
在我的数据库中,我有20个表.
其中一个名为“Connections”的表包含两列“TableName”和“NextHi”
+--------+-------------+
| NextHi | TableName |
+--------+-------------+
| 43 | Page |
+--------+-------------+
| 32 | User |
+--------+-------------+
所以在“TableName”列中是其他表的名称.
彼此表有列“Id”
我需要的是脚本将循环通过数据库中的所有表,前面的表返回一行3列:
> TableName
> MaxID – 表格
>当前表的“连接”表中的NextHi值
所以结果应该是这样的:
+-----------+-------------+-------+
| TableName | NextHi | MaxId |
+-----------+-------------+-------+
| Page | 43 | 435 |
+-----------+-------------+-------+
| User | 32 | 768 |
+-----------+-------------+-------+
我有脚本,它返回给我,但它有每个表的选择,表名称是硬编码的:
(
SELECT
"User" as `TableName`,
`Connections`.`NextHi`,
(SELECT MAX(`Id`) FROM `User`) as `MaxId`
FROM `Connections`
WHERE `Connections`.`TableName` = "User"
)
UNION ALL (
SELECT
"Page" as `TableName`,
`Connections`.`NextHi`,
(SELECT MAX(`Id`) FROM `Page`) as `MaxId`
FROM `Connections`
WHERE `Connections`.`TableName` = "Page"
)
但我需要在循环中将其作为一个选择
编辑:
更正:它实际上不需要只是一个选择,但它应该比我现在拥有的更简单
最后
以上就是安静果汁为你收集整理的mysql循环数据库数据_mysql – 通过数据库表进行Sql循环的全部内容,希望文章能够帮你解决mysql循环数据库数据_mysql – 通过数据库表进行Sql循环所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复