gpt4 book ai didi

mysql - 从所有数据库的所有表中获取数据类型为 'date/datetime' 的列的最大值

转载 作者:可可西里 更新时间:2023-11-01 08:48:26 24 4
gpt4 key购买 nike

考虑一下——有很多数据库,每个数据库都有很多表。我提取了具有“日期/日期时间”数据类型的列以及表名和模式名称。

 SELECT
c.column_name AS col,
column_type AS type,
c.table_name AS tn,
c.table_schema AS ts
FROM
information_schema.columns AS c,
(SELECT
table_name, table_schema, table_rows AS tr
FROM
information_schema.TABLES
ORDER BY table_schema) a
WHERE
column_type LIKE 'date%'
AND a.table_name = c.table_name
AND a.table_schema = c.table_schema
;

我得到了这些列 = (column,column_type,table_name,table_Schema)。现在我想在结果中循环(或者任何其他方式都可以)并且对于每一行我都想这样做

SELECT max(column) FROM table_schema.table_name 

例如,第一行是(login_date,date,login,customers),我想做

SELECT max(login_date) FROM customers.login 

我想对每一行都这样做。任何帮助将不胜感激。

最佳答案

你可以试试这样的:

 cursor csr 
is select max(dates)
from tables
and dates is not null; rec csr%rowtype;

begin
open csr;
for x in cursor_body
loop
fetch csr into rec;
exit when csr%notfound;
x.csr;
end loop;
close csr;

如果您不想创建一个完整的过程,那么您将不得不至少使用一个声明 block 。选择光标中的值,然后在开始后的处理阶段循环光标。

希望对你有帮助

关于mysql - 从所有数据库的所有表中获取数据类型为 'date/datetime' 的列的最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21092251/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com