使用Python检查记录是否存在

时间:2019-02-28 17:09:20

标签: python mysql sql if-statement migration

我正在从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')

0 个答案:

没有答案