gpt4 book ai didi

PHP MYSQL 表比较

转载 作者:搜寻专家 更新时间:2023-10-30 23:38:38 24 4
gpt4 key购买 nike

我的数据库中有两个表,我正在尝试比较两个数据库的电话价格。手机型号相同,但拼写不同(如表 1(型号)和表 2(型号)所示)。实际上我想检查 table2 是否有比 table1 更便宜的模型并将其输出为 MODEL、PRICE1、PRICE2。

TABLE1
id date manufac model price
1 2016-06-26 SAMSUNG A3 A300F BLACK 187
2 2016-06-26 SAMSUNG A5 A500H BLACK 239
3 2016-06-26 SAMSUNG J5 J300F GOLD 185


TABLE2
id date manufac model price
1 2016-06-26 SAMSUNG A300F A3 180
2 2016-06-26 SAMSUNG A500H A5 232
3 2016-06-26 SAMSUNG J300F J5 GOLD 172

我试过使用以下查询但没有成功:

SELECT table1.model AS "MODEL",
table1.price AS "PRICE TABLE1",
table2.price AS "PRICE TABLE2"
FROM table1, table2
WHERE table1.model LIKE CONCAT('%', table2.model, '%');

你们有解决这个问题的想法吗?

最佳答案

无法编写始终有效的查询。问题是“模型”在单个字符串类型字段中包含两个或三个不同的值。

正确的方法是使用“model”、“color”和潜在的“sub_model”字段。当你想在模型之间进行比较时,你会做一个严格的相等表达式:

SELECT table1.model AS "MODEL",table1.price AS "PRICE TABLE1",table2.price AS "PRICE TABLE2" FROM table1,table2 WHERE table1.model = table2.model

表格现在看起来像这样:

TABLE1
id date manufac model color price
1 2016-06-26 SAMSUNG A300F BLACK 187
2 2016-06-26 SAMSUNG A500H BLACK 239
3 2016-06-26 SAMSUNG J300F GOLD 185


TABLE2
id date manufac model color price
1 2016-06-26 SAMSUNG A300F 180
2 2016-06-26 SAMSUNG A500H 232
3 2016-06-26 SAMSUNG J300F GOLD 172

您将必须执行数据清理以将这些字段分离到新字段中,然后确保它们在所有新行中也被分离。

关于PHP MYSQL 表比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38062425/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com