我有一个名为total_table的表,其中存储了用户花费的金额总和,但每次输入新数据时,都会为总表创建重复值。
请检查上面的图片,其中员工10加100,所以总数将是610,现在我需要在新数据插入时自动删除旧数据,即必须从表中删除510行。
答案 0 :(得分:0)
您可以在列名称中添加unqiue键约束,以便可以忽略数据冗余。
ALTER TABLE table_name
ADD UNIQUE (column);
答案 1 :(得分:0)
更新表格中的总列数,而不是插入新行
答案 2 :(得分:0)
您可以使用import time
import os
import psutil
def elapsed_since(start):
return time.strftime("%H:%M:%S", time.gmtime(time.time() - start))
def get_process_memory():
process = psutil.Process(os.getpid())
return process.get_memory_info().rss
def profile(func):
def wrapper(*args, **kwargs):
mem_before = get_process_memory()
start = time.time()
result = func(*args, **kwargs)
elapsed_time = elapsed_since(start)
mem_after = get_process_memory()
print("{}: memory before: {:,}, after: {:,}, consumed: {:,}; exec time: {}".format(
func.__name__,
mem_before, mem_after, mem_after - mem_before,
elapsed_time))
return result
return wrapper
DUPLICATE KEY UPDATE