「各地域毎の一番購入されている商品コードとその購入数、及び地域コードを併せて抽出する」
という処理を行おうとしているのですが、

「テーブル1」
商品コード(CHAR),購入数(INT),地域コード(CHAR)

SELECT 商品コード,
    MAX(購入数),
    地域コード
  FROM テーブル1
  GROUP BY 地域コード

とすると商品コードをGROUP BYのところに入れてくださいというようなエラーが返ってしまいます。
しかしGROUP BYに入れてしまうと出てくる結果がとても多くなってしまい、求めている結果が出せません。

ちなみに、
SELECT --商品コード,
    MAX(購入数),
    地域コード
  FROM テーブル1
  GROUP BY 地域コード
とすると実行でき、各地域ごとのMAX(購入数)と地域コードは表示できます。
この結果にMAX(購入数)に対応した商品コードも合わせて表示するにはどうしたらいいでしょうか?ご教授頂けると幸いです。