假设我有一个表格颜色,其中包含 MainColor(绿色、蓝色)、Tone(44,17)、Brand(Mybrand、Yourbrand 等)、Type(Standard、Special)和 Availability 我需要根据 a 显示请求如:
正在寻找3x 绿调44、8x绿调 17和5x 蓝调 44
它存储在一个像这样的数组中:
Array
(
[0] => Array
(
[MainColor] => Green
[Tone] => 44
[Needed] => 3
)
[1] => Array
(
[MainColor] => Blue
[Tone] => 44
[Needed] => 5
)
[2] => Array
(
[MainColor] => Green
[Tone] => 17
[Needed] => 8
)
)
就像是
有 3x Green Tone 44(1x MyBrand Normal 1x Mybrand Special 和 1x Yourbrand Standard)
和 8x Green Tone 17(1x Herbrand Special 2x Herbrand Standard、4x Ourbrand Standard 和 1x Hisbrand Special)
和 5x Blue Tone 44(3Mybrand Special 和 2x Yourbrand Special)
可用颜色
我知道我可以通过以下方式实现前两条语句:
SELECT *
FROM Colors
WHERE MainColor IN (array['MainColor']) AND Tone IN (array['Tone'])
那么第三个需要相加比较(大于或等于需要量)呢?
SELECT *
FROM Colors
WHERE MainColor IN (array['MainColor']) AND Tone IN (array['Tone']) AND SUM(Colors.Availability) IN >= (array['Needed'])