viewにidentity列を追加したいのですが、SQL文が分からなくて困っています。
追加する方法をご存知の方がいましたらよろしくお願いします。
作りたいviewは以下のようなviewです。
・テーブルA
ID NAME ADDRESS
1 山田 東京
2 鈴木 埼玉
3 田中 千葉
4 佐藤 埼玉
5 藤田 東京
6 石田 神奈川
7 松田 千葉
・作成したいview
ID ADDRESS 出身人数
1 神奈川 1
2 埼玉 2
3 千葉 2
4 東京 2
↑このID列をidentity列にしたいと考えています。
使用しているDBはH2です。よろしくお願いします。
No.2ベストアンサー
- 回答日時:
H2を良く知らないのですが、一般的には、group byとRownum()とを一緒に使うと
うまくいかないのではなかったかと。
SELECT ROWNUM ( ) AS ID,ADDRESS,COUNT(*) AS 出身人数
FROM SAMPLE
GROUP BY ADDRESS
ではなく、
SELECT ROWNUM ( ) AS ID,ADDRESS,出身人数
from
(
select ADDRESS,COUNT(*) AS 出身人数
FROM SAMPLE
GROUP BY ADDRESS
)
とするとうまくいくのでは?
ANO.1の方が示しておられるURLの
The first row has the row number 1, and is calculated before ordering and grouping the result set・・・
To get the row number after ordering and grouping, use a subquery.
というのが、
「group byの前に連番振りますよ、但し・・・。
サブクエリを使うと、group byの後に連番を振りますよ。」(適当な意訳ですけど)
つまり上記の意味です。
返事が遅くなってしまい申し訳ありません。
ご回答の通りにやってみたらできました。参考になりました。
本当にありがとうございました。
No.1
- 回答日時:
rownumを使って以下のSQL文を書いてみたのですが
CREATE VIEW TESTView AS
SELECT ROWNUM ( ) AS ID,ADDRESS,COUNT(*) AS 出身人数
FROM SAMPLE
GROUP BY ADDRESS
以下のような結果になってしまいました。
ID ADDRESS 出身人数
7 東京 2
7 埼玉 1
7 神奈川 2
7 千葉 2
申し訳ありませんが、指摘事項がありましたらお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルのマクロで置換を教えてください 1 2022/05/19 10:27
- 関東 関東1都3県 東京、神奈川、千葉、埼玉 天気予報などで言う順番って決まってますか なんとなくですが東 1 2023/06/23 21:12
- Visual Basic(VBA) 指定文字以外のカウント 4 2023/05/03 14:37
- その他(暮らし・生活・行事) 移住ブームってキモくないですか? なんでわざわざ自然いっぱいな田舎に引っ越すの? 静岡とか軽井沢とか 9 2022/08/23 11:54
- Excel(エクセル) エクセルのマクロを教えてください。 1 2022/03/30 09:29
- 地震・津波 地震・津波の心配が薄い区域 5 2022/09/20 07:54
- Visual Basic(VBA) Excel VBA 転記について 2 2023/02/28 08:34
- 関東 ※東北の人からのにわか質問で不快に来たりムカついたらすいません、悪気はありません。 東京方面に住む人 8 2022/08/03 18:17
- 関東 東京で働く 7 2022/08/26 23:25
- 関東 質問です。東京・埼玉・千葉・神奈川どこが1番住みやすいでしょうか?教えてください。 7 2022/09/29 17:54
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
特定の文字列で列を区切るには?
-
外部参照してるキーを主キーに...
-
伝票番号、品番、在庫としてマ...
-
SELECT 文 GROUP での1件目を...
-
列番号による項目の取得について
-
Accessでの全データから空白削除
-
SQLで列名を変数にできないでし...
-
【VB.NET】日付型の列にNULLを...
-
Access:クエリーにて集計後に...
-
列のヘッダーを含めるのをデフ...
-
for whichの使い方
-
差し込み後、元データを変更し...
-
pythonにてseleniumを使うも、...
-
マイクラPC版のコマンドで効率...
-
グループ毎の最大値を持つデー...
-
次の並び替え問題を教えてくだ...
-
Exel VBA 別ブックから該当デ...
-
処理件数を非表示にしたい
-
エクセルで最後の文字だけ置き...
-
SQL文で、合計が0のレコードを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SELECT 文 GROUP での1件目を...
-
外部参照してるキーを主キーに...
-
SQLで列名を変数にできないでし...
-
列のヘッダーを含めるのをデフ...
-
Access:クエリーにて集計後に...
-
列番号による項目の取得について
-
【VB.NET】日付型の列にNULLを...
-
UPDATE文のWHERE条件に他のテー...
-
SQLによる"あいうえお"順でソー...
-
特定の文字列で列を区切るには?
-
テーブル列数とデータファイル...
-
項目名に大文字と小文字の混在...
-
特定の列だけをGROUP BYしたい時
-
Accessでの全データから空白削除
-
複数列の最大値を求めたい
-
SQLのクエリ、又はプロシージャ...
-
DB2のSQL
-
SQLについて質問です。 テーブ...
-
IDENTITY列の更新で失敗する
-
Accessのリストボックスについて
おすすめ情報