Избегайте / заменяйте повторяющиеся строки в MySQL, используя Python - PullRequest
0 голосов
/ 16 июня 2019

У меня есть таблица MySQL, которая постоянно обновляется каждый час.Учитывая существующую таблицу MySQL, приведенную ниже:

  date      time    price   
11/6/2019   7:10     4.56  
11/6/2019   7:15     5.01 
11/6/2019   7:20     4.87 
11/6/2019   7:25     4.54 

Два вопроса:

  1. Как можно избежать вставки повторяющихся строк, если есть другая запись 6/6/2019 на7:25 с той же ценой 4,54?

  2. Как вставить последнюю цену, если есть новая запись на 6/11/2019 в 7:25 с последней ценой5,02?(эта последняя запись, та же дата / время, но другая цена заменит существующую)

Я новичок в MySQL и пробовал поиск в Google, но не могу найти четких ответов - он делаетменя больше смущает скорее.Похоже, что в этом случае использование первичного ключа / уникального ключа не вариант.

Я использую Pandas / sqlalchemy / MySQLdb.Мой код ниже

import pandas as pd
import numpy as np
import MySQLdb
from sqlalchemy import create_engine

df = pd.read_csv('summary_1.csv')
price_df = df[['date','time','price']]

engine = create_engine('mysql+mysqldb://root:python@localhost:3306/testdb2', 
echo = False)

df.to_sql(name = 'price', con=engine, if_exists = 'append', index = True)

Кто-нибудь может просветить меня?Дайте мне знать, если вам нужна дополнительная информация.Спасибо!

...