我正在从SQL转到python,但我仍然感到困惑。这是我的代码中的以下内容,我想知道结果变量的选择值是否存在于卖方变量的选择中,如果存在则不执行任何操作,并且不加载数据。在sql中,如果存在,我不知道python中的等效项是什么。预先非常感谢。
示例我要从sql表中获取一条记录并加载到 另一个mysql表,如果您已经有这些记录 我希望您在屏幕上打印的mysql表:您没有新的 记录,如果您有记录,那么您尚未在 我要加载这些日志的Mysql表。
注意:我在数据框中设置数据,然后将其加载到mysql
import pymysql.cursors
import pyodbc
import pandas as pd
from sqlalchemy import create_engine
from sqlalchemy.types import Integer, VARCHAR, DECIMAL, DATETIME
from datetime import date
connection = pyodbc.connect("DSN=SQLServer") #autocommit=True
try:
with connection.cursor() as cursor:
result = "SELECT * FROM dw.dbo.vW_sale"
df = pd.read_sql_query(result,connection,index_col=None,coerce_float=True, parse_dates= 'DataBaseContrato')
cursor.execute(result)
table = cursor.fetchall()
print(table)
finally:
connection.close()
#Conexão Mysql
cnx = create_engine('mysql+pymysql://test:test@test/dw')
cnxmysql = pymysql.connect(host='test',
user='test',
password='test',
db='dw')
try:
with cnxmysql.cursor() as cursor2:
sale = "SELECT * FROM ft_sale_test"
cursor2.execute(venda)
sale = cursor2.fetchall()
print(sale)
finally:
cnxmysql.close()
df.to_sql(con=cnx, name= 'ft_sale_test',if_exists= 'replace', index= False)
print('Loading data')