我有 2 个数据库,一个用于操作,一个用于分析。
分析数据库与操作数据库不是 1:1 相同,但仍然非常相似。
现在我将存档文件 (csv) 加载到分析数据库中(之前它是空的)。
我在分析中有我的旧数据,在操作数据库中有我的当前数据。
我想写一个查询来查明一些新加载的记录是否已经在数据库中。
有没有办法检查这个?
编辑:
首先我很抱歉。查看我的数据库后犯了一个错误。我不需要比较两个不同的数据库,通过 phpmyadmin 复制操作数据库时,我忘记将当前数据加载到分析数据库中。所以我只需要比较一个数据库中的2个表,是否有一些旧记录已经在数据库中。
我的第一个想法是/是:
SELECT *
FROM orderlinesold t1
LEFT JOIN orderlines t2 on t1.orderid = t2.orderid;
但是在运行该查询之后,我得到了孔行,这是不可能的——>错误的查询。
如何检查某些旧数据是否仍在新数据中?
PS:表格在评论中作为链接。
- 编辑:
好的,我解决了。只是一个比较查询:
SELECT *
FROM ordersold t1
INNER JOIN orders t2 ON t1.orderid = t2.orderid
LIMIT 100000000;
或者:
SELECT *
FROM orderlinesold t1
LEFT JOIN orderlines t2 ON t1.orderid = t2.orderid
WHERE t2.orderid IS NOT NULL
LIMIT 100000000;
两者都丢弃了正确的结果。
还是谢谢。这个帖子可以关了。