3

現在、次のようなテーブルがあります。

Day  Limit  Price  
1   52      0.3  
1   4       70  
1   44      200  
1   9       0.01   
1   0       0.03  
1   0       0.03  
2   52      0.4  
2   10      70  
2   44      200      
2   5       0.01   
2   0       0.55   
2   2       50

SQL を使用して結果を操作して、価格のカテゴリが異なるテーブルを作成し、その価格に応じて制限の最大値を選択する方法はありますか?

Day   0-10   10-100     100+  
 1     52       4        44  
 2     52      10        44
4

1 に答える 1

2

あなたは使用することができCASEますMAX

SELECT Day,
  MAX(CASE WHEN Price BETWEEN 0 AND 10 THEN Limit ELSE 0 END) as ZeroToTen,
  MAX(CASE WHEN Price BETWEEN 10 AND 100 THEN Limit ELSE 0 END) as TenToHundred,
  MAX(CASE WHEN Price > 100 THEN Limit ELSE 0 END) as HundredPlus
FROM YourTable
GROUP BY Day

これがフィドルです。

ところで -- MySQL を使用している場合は、キーワードであるため、LIMIT の周りに目盛りを追加してください。

幸運を。

于 2013-02-08T02:19:47.273 に答える