擅长:python、mysql、java
<p>如果我理解正确,您只有一个表需要年份列,因此假设<code>yeartable</code>将是该表的名称</p>
<pre><code>import pymysql
import pandas as pd
conn=pymysql.connect(host="localhost",user="root",password="",db="bulk")
cursor=conn.cursor()
cursor.execute("show tables")
myresult=cursor.fetchall()
for i in myresult:
print(i)
if (i == 'yeartable'):
query=('select text, imdburl, year from %s '%(i))
else:
query=('select text,imdburl from %s '%(i))
cursor.execute(query)
result=cursor.fetchall()
print(result)
my=pd.read_sql_query(query,conn)
my.to_csv("new.csv",index=False)
</code></pre>
<p>对于可扩展的解决方案,您需要在表中获得一些信息<br/>
您可以获取表的所有列名,如下所示:</p>
<pre><code>SELECT `COLUMN_NAME`
FROM `INFORMATION_SCHEMA`.`COLUMNS`
WHERE `TABLE_SCHEMA`='yourdatabasename'
AND `TABLE_NAME`='yourtablename';
</code></pre>
<p>从上面的<code>if</code>中检查名为<code>year</code>的列,而不是检查<code>yeartable</code>,这样应该很好</p>