我有一张表格,用于存储图像每个像素的R,G,B。
我想制作一个SELECT,按照这三个列的变化对结果进行分组。
我希望例如该记录包含: 55,100,60 与包含以下内容的记录分组: 50,105,65
在这种情况下,更改被定义为5或更少。
我的目标是在7700分析像素后返回重复颜色的变化。
答案 0 :(得分:1)
这取决于你如何定义" margin"。一个非常简单的答案是
GROUP BY r/5, g/5, b/5
(假设r,g和b是某种形式的整数,而不是浮点数或数字)
如果需要,你可以做一些比较漂亮的事情(可能还有窗口功能)。
除此之外,我建议创建一个复合类型:
CREATE TYPE pixel AS( r smallint, g smallint, b smallint);
然后您可以将整个图像作为像素[]的2D数组存储在一行中。对于大多数事情,我希望它更容易一些。它也应该表现得更好。