我有两个具有相同内容的表,一个是第一个表的旧副本。因此,实时表可能会有价格变化。我正在尝试构建一个查询来查找旧记录中的价格变化。
Products
ID
Title
Price
旧表
Old_Products
ID
Title
Price
我到目前为止使用此查询但是没有按照我的意愿行事。
SELECT products.id
FROM products
LEFT JOIN products_old ON products.id = products_old.id
WHERE products.price IS NULL
答案 0 :(得分:2)
制作你的where子句,以确定旧表和新表之间价格不相等的位置。
SELECT products.id, products.title, products.price, products_old.price
FROM products
JOIN products_old ON products.id = products_old.id
WHERE products.price <> products_old.price
如果这个简单的查询在您的数据库上表现不佳,我建议检查您在两个表上应用的索引。此外,正如ypercube所提到的,使用简单的内连接比使用外连接更有效。