【发布时间】:2018-02-11 18:43:29
【问题描述】:
我有一个电子商店。有很多桌子,但只需要两张。产品和变体。每个产品都有多个变体。前任。 产品: 编号 |姓名 |网址 |活跃
- 1337 |产品1 |产品-1 | 1
还有变体: prod_id |颜色 |尺寸 |价格
- 1337 | XL |黑色 | 10
- 1337 | sm |黑色 | 11
- 1337 | XL |白色 | 9
- 1337 | sm |白色 | 8
等等
我有大量的商品要导入。我将其解析为数组并导入缺少的产品和变体。这里一切都很好。 我必须做的是删除传入数组中缺少的选项。 我可以一步一步做,但是数据数组太大了,服务器内存不够用。所以我必须发出一个 SQL 请求,以获取传入数组中缺少的变体。
我可以用任何方式制作传入数组,例如:
array(2716) {
["00000614552"]=>
array(1) {
["options"]=>
array(44) {
[0]=>
array(2) {
[0]=>
string(11) "white"
[1]=>
string(3) "2/S"
}
[1]=>
array(2) {
[0]=>
string(11) "white"
[1]=>
string(3) "3/M"
}
[2]=>
array(2) {
[0]=>
string(11) "white"
[1]=>
string(3) "4/L"
}
[3]=>
array(2) {
[0]=>
string(11) "white"
[1]=>
string(4) "5/XL"
}
[4]=>
array(2) {
[0]=>
string(13) "black"
[1]=>
string(3) "2/S"
}
...
}
现在的问题是 - 如何进行查询以选择不在此数组中的所有变体。制作大小和颜色的总和数组并告诉它选择不在数组中的行不起作用,因为缺少的选项可能是例如“black-xl”,但是有“black-sm”和“white-xl”,所以黑色和xl 在那个数组中。
希望我描述清楚;)
【问题讨论】: