• ベストアンサー

SQL UPDATE 文 GroupByの値を更新したい

seimurakamの回答

回答No.1

データベースの種類が示されていないので 正確には答えられないかも知れませんが、 副問い合わせが使えるなら update TABLE_HOGE a set COLUMN_FUGA = (select count(*) from TABLE_HOGE where COLUMN_XXX = a.COLUMN_XXX); でいけるんじゃないでしょうか?

a123b123
質問者

補足

すいません。 データベースは、Access2003を使用しています。 教えていただいた内容で、やってみたいと思います。

関連するQ&A

  • VBでSQL文のUPDATE文を使った時のエラー

    access VBA初心者ですが回答、ご指摘のほうよろしければお願いします。 フォームにて更新ボタン押下時、テーブルの更新日付を現在の日付で更新したいと考えております。 下記のようにVBを組み込んだのですが、実行すると「UPDATE ステートメントの構文エラーです」というエラーがでてしまいます。 構文のどこが悪いか御指南いただけないでしょうか。 test_TBLの更新日付のフィールドを現在日付で更新 Dim sql As String Dim newdate As Date newdate = Now() sql = "UPDATE test_TBL SET 更新日付 =#" & newdate & "#" DoCmd.RunSQL sql

  • SQL文の質問です

    ------------------- |No|・・・|locate| ------------------- | 1|・・・| LA-01| ------------------- | 1|・・・| LA-02| ------------------- | 2|・・・| LA-01| ------------------- | 2|・・・| LA-01| ------------------- | 2|・・・| LA-02| ------------------- | 2|・・・| LA-03| ------------------- | 3|・・・| LA-03| ------------------- | 3|・・・| LA-03| ------------------- 上のように、運用上の問題で、キー項目が設定されていないDBが あり、その中の「locate」フィールドの値を更新しなくてはいけません。   旧 新 LA-01 → LA-02 LA-02 → LA-03 LA-03 → LA-01 「一旦、どれかをまったく別の値にUPDATEしたあと、  残り2つをUPDATEし、最初の1つを再度UPDATEする」 と考え実行してみたのですが、データの件数が多く、 UPDATE3回実行は処理時間がかかりすぎたため、 できれば、SQL1文で処理させたいのですが、 いい考えが浮かびません。 よい方法が無いか知恵をお貸しください。

  • リレーションをSQL文で作る方法は?

    urizakaです 今まではSQL-Serverを使っていたのですが、今度からPostgresSQLを使うこと になりました。 さて、そこで質問なのですが、SQL文でテーブルを作るとき、他のテーブルの カラム(フィールド)と作ったテーブルのカラム(フィールド)のリレーションを 作るにはどうすれば良いのでしょうか? 特に、シリアル型で作ったフィールドの値を外部参照キーとして持ってきたい 場合はどのようにSQL文を書けばよいのでしょうか? すみませんが、よろしくお願いします。

  • SQLで複数のテーブルと結合したUPDATE文

    普通のUPDATE文はUPDATEするテーブル名を一つ記入して UPDATE テーブルA SET フィールドA = 値A WHERE テーブルA.フィールドB = 値B みたいな感じですが、私のしたい事はと言うと UPDATE テーブルA,テーブルB,テーブルC SET A.フィールドA = 値A WHERE テーブルA.フィールドA = テーブルB.フィールドB AND テーブルB.フィールドB = テーブルC.フィールドC AND テーブルB.フィールドD = 値D AND テーブルC.フィールドE = 値E という具合に複数のテーブルがUPDATEするテーブルA以外のところで、互いに条件で結ばれており、FROM句でUPDATEしないテーブル名まで宣言しないといけなくなっています。そもそもこういうFROM句を使うUPDATE文は実行可能かも不明です。どなたか解決策お願いいたします。ちなみに開発ソフトはVBAを使っています。

  • SQL で更新(update)

    SQLのupdate文で質問です。 こんな感じに更新したいんですが、 行番号が1のときの数値を行番号2も同じにしたいんですが、ちなみちに品番ごとです。 データはW_iテーブルのデータをそのまま更新したいんですが、どのようにしたろうまく出来ますか。 update W_i set 値 = 数値 from W_i where 行番号 = '1' こうすると行番号1しか変わらない (初期)        品番 数値 行番号 ------------------ CZ 5 1 CZ 8 2 DF 6 1 DF 3 2 ↓ (更新後) 品番 数値 行番号 ----------------- CZ 5 1 CZ 5 2 DF 6 1 DF 6 2

  • updateしてもSQLを終了すると元に戻る

    Oracle_9→access2002 で外注開発されたシステムを利用しています さて、Oracle、SQL_Plusの[update TABLE1 SET FIELD1 = 'X' WHERE FIELD1 IS NULL]等でデータ更新後、[select 列名リスト FROM TABLE1 WHERE 検索条件]で確認すると確かに更新されているが、SQLを終了後、再起動すると元に戻ってしまいますが、どんな原因が考えられますか?update実行後に確定操作等あるのですか? Oracleはまったく初心者ですがお願いします

  • こんなSQLを教えてください

    こんなSQLを教えてください <更新前> テーブル1 |キー|コード| | 1|  a| | 2|  b| | 3|  c| テーブル2 |キー|コード| | 2|  B| | 4|  D| <更新後> テーブル1 |キー|コード| | 1|  a| | 2|  B| | 3|  c| こんなふうに テーブル1と同じデータがテーブル2にあったら テーブル1を書き換えるUPDATE文を教えてください

  • SQL文で

    T-SQLを使用しています。 下記のような場合どのようにSQL文を組めばよいのでしょうか?Group byを使用すると思うのですが・・・ テーブル名:SampleTbl フィールド1:ID(プライマリ) フィールド2:Name(varchar(4)) 【名前】 フィールド3:UpTime(varchar(16))【更新時刻】 ※UpTimeの概要 yyyyMMddhhmmssss 2004/06/01 12:00:0000 中身 1,鈴木,2004060112000000 2,鈴木,2004060112050000 3,鈴木,2004060112100000 4,鈴木,2004060112200000 5,山田,2004060112000000 抽出条件: 同一の名前で更新日が5分以内の範囲で更新されているデータのみ抽出する 抽出結果 1,鈴木,2004060112000000 2,鈴木,2004060112050000 3,鈴木,2004060112100000 上記の抽出結果を取得するにはどのようにすればよいか、ご教授お願い致します。

  • アクセスの更新クエリについて

    あいうテーブルの日付に、かきくテーブルの日付の値を更新したい場合はどうしたらよいのでしょうか? あいうテーブルの日付は複数レコード発生し、かきくテーブルの日付は1レコードです。 あいうテーブルの日付の値を一度で、かきくテーブルの日付の値に更新したいです。 アクセスのSQL文を以下の通りにするとエラーが発生します。 UPDATE DTあいう SET あいう.日付 = かきく!日付; アクセスのSOL文を教えてください!

  • SQLのUPDATE文(WHERE)で教えて下さい

    SQLのUPDATE文(WHERE)で教えて下さい SQL初心者なのですが、どなたか教えて頂けないでしょうか・・・。 Oracle10gにSqlPlusで接続してテーブルをUPDATEしようとしています。 【テーブル1】 品番、 規格、 取引先、 日付 A1   XXX  T001   2010/01/01 A1   YYY  T002   (空白) B1   XXX  T001   (空白) C1   ZZZ  T003   (空白) 【テーブル2】 品番、 規格、 取引先、 備考 A1   XXX  T001   あああ A1   YYY  T002   いいい B1   XXX  T001   ううう テーブル1の「日付」が(空白)のレコードを対象に、 テーブル1の「品番+規格+取引先」とテーブル2の「品番+規格+取引先」が同じな場合、 テーブル1の「日付」項目に今日の日付をUPDATEしたいと考えています。 結果を以下のようにしたいです。 【テーブル1】 品番、 規格、 取引先、 日付 A1   XXX  T001   2010/01/01 A1   YYY  T002   2010/03/19 B1   XXX  T001   2010/03/19 C1   ZZZ  T003   (空白) これが実現できるSQL文を教えて下さい。 宜しくお願い致します。