好吧,所以我不知道如何告诉MySQL在两个不同的表中如果他们共享相同的ID,然后将其存储到另一个表中,可以将两个值的差值取出。我试图用这个片段是应该保持的任何值使用相同的ID,但我想我没有错:比较2个MySQL表格,并获得差异
SELECT tableA.itemid FROM tableA INNER JOIN tableB ON tableA.itemid=tableB.itemid WHERE tableA.price <> tableB.price;
表A:
itemid | price
0 | 10
1 | 40
2 | 30
tableB的:
itemid | price
0 | 40
2 | 20
3 | 90
(tableA-tableB)newTable:
itemid | price
0 | -30
2 | 10
如果有人能帮助我指向正确的方向,那会很好。我对MySQL还是比较陌生的,所以如果我还可以获得一些链接到几个处理类似问题的教程,那也是很好的。
第一个例子,你说这样它会返回一个列。你知道它到底在哪里吗?我知道你说过它返回结果集..但我不确定它是否被添加到tableA或tableB。 –
SELECT语句的成功执行准备一个结果集并将其返回给客户端。如果您正在运行msyql命令行客户端,则结果集中的行将显示在终端窗口中。查询的结果集看起来像一个包含行的定义列(包含名称和数据类型)。 (SELECT语句可以指定一个ORDER BY子句,以便与表格不同,这些行以特定顺序返回)。结果集仅在语句持续时间内保留。 SELECT语句不会删除或替换表中存储的任何值。 – spencer7593
在CREATE TABLE示例中,演示了如何将SELECT查询(结果集)返回的行转换为表。 (它与运行CREATE TABLE和INSERT ... SELECT语句的效果相同。)它是存储结果集的CREATE TABLE AS或INSERT。 SELECT只是提供行。 – spencer7593