我有 3 张桌子。寻找一种PRICE
使用三个不同表格查找字段差异的好方法,然后显示前 3 个最大的负差异。我想首先找到要使用的最佳 MySQL 查询,并找到在 php.ini 中显示它的最佳方式。
可维护:
COMPANY | MODEL | PRICE
Main Company | ProductA | 100.00
Main Company | ProductB | 50.00
Main Company | ProductC | 25.00
Main Company | ProductD | 300.00
兼容1:
COMPANY | MODEL | PRICE
Competitor1 | ProductA | 100.00 //0
Competitor1 | ProductB | 55.00 //5
Competitor1 | ProductC | 50.00 //25
Competitor1 | ProductD | 200.00 //-100
兼容2:
COMPANY | MODEL | PRICE
Competitor2 | ProductA | 99.00 //-1
Competitor2 | ProductB | 44.00 //-6
Competitor2 | ProductC | 20.00 //-5
Competitor2 | ProductD | 100.00 //-200
因此,我希望在我的页面中显示的 PRICE 的最大负面差异是:
- 竞争对手 2 ProductD 与主要公司 ProductD 的差异 -200
- 竞争对手 1 ProductD 与主要公司 ProductD 的差异 -100
- 竞争对手 2 产品 B -6 与主要公司产品 B 的差异
IDEA:我对它不是很熟悉,但我可以UNION SELECT
在三张桌子上使用 .. WHERE MODEL=XXX
。我可能会遍历每个收集数据、进行数学运算并吐出信息的人。唯一的问题是,我不知道如何将每个变量存储为每个表的自己的价格。另外,我认为它会显示所有差异,除非有办法在进行数学运算后存储每个变量,然后显示前 3 个差异。
任何可以最好地解决此查询的想法或建议将不胜感激。(注意:不,我不能把它们都放在一张桌子上=p)