回答編集履歴

1

追加

2017/12/28 00:04

投稿

A.Ichi
A.Ichi

スコア4070

answer CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  まずは(1)のエラーになるのは、SQL文法としてgroup by機能ではselect区の項目と一致する事をPostgresでは前提としているのでエラーになります。ですがMySqlではエラーになりません。商品区分のどれか一つが選ばれます。
6
6
 
7
- 次に(2)の結果の桁数が異なるのは、データベース設計上、同じ商品名が他の商品区分に存在する可能性が有ると言っています。
7
+ 次に(2)の結果の桁数が異なるのは、データベース設計上、同じ商品名が他の商品区分に存在する可能性が有ると言っています。この場合、商品区分を「被服」、「服飾」に分けているのでしょか、同じ商品名が跨って存在しているのかも。
8
8
  例えば、商品マスタの商品名は複数有得てユニークでないと考られる場合、商品マスタは、商品区分と商品名でユニークとする様します。そうであれば商品履歴の件数集計は、商品区分を含む事になります。
9
9
  ```sql
10
10
  select 商品区分, 商品名, count(*) from 商品履歴 group by 商品区分,商品名;