人が物件を購入した回数を指定するこの表を考えてみましょう。
+--------+----------+
| user | property |
+--------+----------+
| john | car |
| john | car |
| john | house |
| peter | car |
| peter | car |
| amanda | house |
| amanda | house |
+--------+----------+
車を一度購入した回数、家を一度購入した回数などを知る必要があります。
+----------+---+---+
| property | 1 | 2 |
+----------+---+---+
| cars | 4 | 2 |
| house | 3 | 1 |
+----------+---+---+
- 車は何回購入されましたか?4つ、ピーター用に2つ、ジョン用に2つ。
- 車を2回購入したのは何回ですか。同じ人のために、2つ。
- 家は何回購入されましたか?3つ、アマンダ用に2つ、ジョン用に1つ。
- 家を2回購入したのは何回ですか。一度だけ、アマンダのために
これは、SQLクエリのみを使用してこれを行うことは可能ですか?
- 私はパフォーマンスやハックの方法を気にしません。
- 3つ以上の周波数があります。
人が物件を購入できる時間は決まっているので(5)、クエリで列を手動で指定することは問題ありません。つまり、次のようなことをしても問題はありません。
SELECT /* ... */ AS 1, /* ... */ AS 2, /* ... */, AS 3 /* ... */