0
我有一個x和y座標的客戶列表,每個座標爲-50到50之間。我需要計算每個10x10格子廣場的客戶數量,但不知道如何按兩列範圍對客戶進行分組。 Customer表具有customerID,customer_x和customer_y列。我已經成功地得到結果使用SQL網格範圍
SELECT 10 * (customer_x/10) AS start_range, 10 * (customer_x/10) + 9 AS end_range, count(*) AS COUNT FROM t_customer GROUP BY customer_x/10
我發現這個here一列,但不知道如何得到這個帶有二維範圍工作。我已經開始使用Select * from customer where (customer_x, customer_y) between (-50,-50) and (-50,-40)
等編寫每個網格的案例,但總共有100個,我假設有一個更有效的方法?我正在使用SQLite3。任何幫助將非常感激。
我忘了補充一下,它實際上只需要顯示客戶數量最多的網格平方,所以可能會有更簡單的方法呢?
我只是想 '選擇10 *(customer_x/10)start_range, 10 *(customer_x/10)+ 9 end_range, COUNT(*)AS COUNT FROM t_customer GROUP BY customer_x/10,customer_y/10',但它仍然沒有給出所需的答案。 –
謝謝@ dmitry-kurbsky,這似乎工作,但我改成了'SELECT 10 *(customer_x/10,customer_y/10,COUNT(*)FROM t_customer GROUP BY customer_x/10,customer_y/10 –
),10 *(customer_y/10),COUNT(*)FROM t_customer GROUP BY customer_x/10,customer_y/10;'以便保持座標範圍。我將如何去訂購新的頻率欄? –