Rufen Sie Spaltennamen und den letzten Datensatz aller Tabellen in MySQL ab
P粉401527045
P粉401527045 2024-03-31 13:15:35
0
1
432

Gibt es eine Möglichkeit, die neuesten Werte aller Tabellen und deren Spaltennamen abzurufen, anstatt jede Tabelle auszuwählen? Ich bin auf die folgende Auswahlabfrage gestoßen, aber sie gibt nur Spaltennamen zurück und wenn ich * anstelle von Spaltenname verwende, gibt es viele unnötige Details, die ich nicht benötige.

SELECT column_name 
FROM information_schema.columns 
where table_schema = 'classicmodels'  
order by table_name, ordinal_position

Ich benötige nur den Spaltennamen, der den neuesten Datensatz in dieser Spalte enthält.

P粉401527045
P粉401527045

Antworte allen(1)
P粉211273535

我可以使用 phyton sql 连接器读取所有表的最新记录。可能有更好的方法来做到这一点,但因为我不允许在正在运行的数据库中工作,所以我选择了这种方法。

import logging
import mysql.connector

mydb = mysql.connector.connect(
    host="127.0.0.1",
    port=3306,
    user="root",
    password="root",
    database="classicmodels")

mycursor = mydb.cursor(buffered=True , dictionary=True)

sql = "SELECT * FROM information_schema.tables where table_schema = 'classicmodels'"
mycursor.execute(sql)
myresult = mycursor.fetchall()
tables = [d['TABLE_NAME'] for d in myresult]

for x in tables:
    sql1 = "select * from {}".format(x)
    mycursor.execute(sql1)
    myresult1 = mycursor.fetchone()
    for val, cal in myresult1.items():
        print(f'{val} is {cal}')
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage