• ベストアンサー
  • 困ってます

SQLのINSERT文について

SQLのINSERT文について Accessを使用していて1列目が管理Noとなっています。 その時のレコード数を管理Noに指定したいのですがうまく行きません。 Insert Into TableA Values((Select Count(*) From TableA),'データ') 原因もしくは他の方法があればご教授お願いします。

共感・応援の気持ちを伝えよう!

  • 回答数1
  • 閲覧数212
  • ありがとう数6

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.1
  • bx2
  • ベストアンサー率47% (97/206)

Values の中に Select は書けません。 下記のように書いたらよいはずです。 INSERT INTO TableA SELECT COUNT(*), 'データ' FROM TableA

参考URL:
http://office.microsoft.com/ja-jp/access-help/HP001032245.aspx?CTT=1

共感・感謝の気持ちを伝えよう!

質問者からのお礼

回答ありがとうございます。 上記SQLではエラーが出てしました。 INSERT INTO TableA (Field1,Field2) SELECT COUNT(*),'データ' FROM TableA でエラー無くできました。

関連するQ&A

  • ACCESS SQLのINSERTについて

    TBLというテーブルにINSERT文を使用して1行レコードを追加したいです。TBLテーブルのカラムAにはシステム日付を、カラムBには別テーブルのselect count(*)の実行結果を挿入したいのですがうまくいきません。何か良い方法はございませんでしょうか? INSERT INTO カウンタ統計 ( [DATE], USER_COUNT ) VALUES (date(), (SELECT COUNT(*) FROM hiplus_HW_USER)); ※日付は問題なく挿入できるのですがSELECT文の結果が挿入できない状況です。宜しくお願いします.

  • 副問い合わせのinsert文

    いつもお世話になっています。 insert文の副問い合わせのことでお聞きしたいのですが、 ■通常のinsert文 insert into AAA values(aaa,bbb,ccc); 上記のsqlを副問い合わせにした場合(aaaに別テーブルからの検索結果を入れたい場合)どういうSQL文になるでしょうか。 参考書等を参照すると、副問い合わせの場合はvaluesを省略する(使えない?)と記述がありました。 insert into AAA values ( aaa IN (SELECT bbb from BBB where ccc = ddd),bbb,ccc); とはできないみたいですので… どうかご教授宜しくお願いします。

  • 【SQL文】Insert into文で文法エラー

    insert into文で思ったような結果がでません。SQL文にお詳しい方、ご教授いただけますでしょうか? SQLは初心者レベルです。 期待している結果: テーブルT-BBSにT-USRのusr-id全リストを入れて、T-BBSのa,b,cには固定の数値を入れたいと思っています。 テーブル例: テーブル名:T-BBS ,カラム:usr-id,a,b,c, テーブル名:T-USR, カラム:usr-id 結果 user-id | a | b | c 2 |1 | 2 | 3 3 |1 | 2 | 3 4 |1 | 2 | 3 7 |1 | 2 | 3 私が考えたSQL文ですが、 INSERT INTO T-BBS(SELECT user-id FROM T-USR,1,2,3) →×(文法エラー) INSERT INTO T-BBS(user-id,a,b,c) VALUES (SELECT user-id FROM T-USR,1,2,3)→× 文法エラー INSERT INTO T-BBS(user-id,a,b,c) VALUES ((SELECT user-id FROM T-USR),1,2,3)→×サブクエリが複数行を含んでいる ちなみにデータベースはH2 Databaseというものみたいですが、mySQLと方言は同じという認識をもってます。 以上宜しくお願いします。

    • ベストアンサー
    • MySQL
  • Insert文で・・・

    失礼します。SQL初心者なので質問します。 Insert into Aテーブル Select X , Y , Z From Bテーブル というSQLがあり、Aテーブルの列数を3から4にした際、AテーブルへのInsertの項目を、BテーブルからSelectされたX,Y,Z以外に普通の変数αも新たに作成した4つめの項目として同時にInsertしたい場合、どのようなSQLにすれば良いでしょうか? Insert into Aテーブル (Select X , Y , Z From Bテーブル),α みたいに都合良くはいきませんよね??

  • INSERT文(2)について

    お願い致します。 ORACLE9iを使用しています。 INSERT INTO tableA(AA,BB,CC,DD,・・・) VALUES (AA,BB,CC,DD・・・) ************************** 項目  長さ AA 11,3 BB 11,3 CC 11,3 ・ ・ ************************** 現在データ(VALUES句内部) AA→0.00000000まで ・ ・ *************************** 状態です。 SQL文上のINTO句とVALUES句の値の対応は取れています。 VALUES句が現在は少数点以下切捨てしてない状態な為、ORACLE項目の長さ以上に値が指定されているのですが、これが原因でエラーになっているのでしょうか? エラーメッセージ:「VALUESキーワードがありません」 お願い致します。

  • sql文の中での時間取得

    sql文の中で以下のように時間を指定してselectしています。ですが、時間を「sqlの実行時間からn分前までの間」に修正したいと考えています。どなたかご教示いただけませんでしょうか。 select count(*) from tableA where hoge = '0000' and end_time >= cast('2000/1/01 00:00' as timestamp) and end_time < cast('2011/1/31 00:00' as timestamp) たとえば select count(*) from tableA where hoge = '0000' and end_time >= sqlを実施した時間から45分前 and end_time < sqlを実施した時間 のようにしたいです。 ご協力お願い致します。

  • 見たことのないINSERT文

    お世話になります。 他人の書いたSQLを解析して以下のようなコードを見つけました。 CREATE TABLE OYA ( ID NUMBER NOT NULL, NAME VARCHAR2(10) ) / CREATE TABLE KO ( ID NUMBER NOT NULL, OYA_ID NUMBER NOT NULL, NAME VARCHAR2(10) ) / INSERT INTO ( SELECT ID ,OYA_ID ,NAME FROM KO WHERE EXISTS ( SELECT ID FROM OYA WHERE NAME LIKE '%1' ) ) VALUES ( 1 ,1 ,'KODOMO-1' ); INSERT文でテーブル名を指定するかわりにSELECT文を指定しています。 SELECT INSERT文は知っていますが、このような表記は初めてです。 (文法エラーにならないのに驚きました) おそらく意図するところは、ある条件に一致したOYAが存在する場合に、KOをインサートするのだと思いました。 実際は、OYAがなくてもINSERTは実行されてしまいますが。。。 このような表記のINSERT文の説明が書いてあるサイトをご存知の方がいらっしゃいましたら、よろしくお願いします。

  • ACCESSのSQL文

    ACCESSのSQL文 いつもお世話になります。 SQL文でテーブルのデータを抽出したいのですが上手くいきません。 Dim rs4 As ADODB.Recordset Dim cmdrs4 As New ADODB.Command Set cmdrs4.ActiveConnection = CurrentProject.Connection a = "SELECT 管理NO" & " FROM マスタ" If strFlter = "" Then a = a & ";" Else a = a & " WHERE " & strFlter & ";" End If cmdrs4.CommandText = a Set rs4 = cmdrs4.Execute() MsgBox rs4.GetString aの内容は a = "SELECT 管理NO FROM マスタ WHERE 管理NO Like ""*2*"";" 実行すると、rs4.GetString文で下記エラーが出ます。 「BOFとEOFのいづれかがTrueになっているか、または現在のレコードが削除されています。 要求された操作には、現在のレコードが必要です。」 aを "SELECT 管理NO FROM マスタ WHERE 管理NO = ""2-6"";" なら問題ありません。 Likeの使い方が悪いのでしょうか? よろしくお願いします。

  • SQL文について

    開発言語:VB2010 DB:SqlServer2005 及び ACCESS2007 SQLサーバーのテーブルをAccessのテーブルへINSERTしたいのですが、 一文で行う事は可能でしょうか? (テーブルの構造は全く同じです) 同じDB内であれば、下記のような感じで出来ると思うんですが。 +----------------------------------+ INSERT into Atest_ACCESS SELECT * FROM Btest_SQL Where OperationDate => 2011/09/05 +----------------------------------+ 出来るのあればどのようにすれば良いのが教えて頂けると幸いです。 よろしくお願い致します。

  • SQL文の書き方

    お世話になっております。 現在、SQLServer2000(SP4)を使用しています。 次の結果を求めるSQL文を作りたいのですが、中々上手く行きません。 良い方法を教えて下さい。 あるテーブル(tableA)にレコードが以下のようにあるとします。 【基本コード】【大分類】【中分類】    1      1    3    1      1    4    1      2    1    2      1    99    2      18    1    3      3    2 やりたい事は、【基本コード】毎に、【大分類】【中分類】の最小値を取得したいので、下記の結果を得たいのですが、 期待する結果↓ 【基本コード】【大分類】【中分類】    1      1    3    2      1    99    3      3    2 現在考えているSQL文では、下記のようになってしまいます。 実際の結果↓ 【基本コード】【大分類】【中分類】    1     1     3    2     1     3    3     3     3 現在考えているSQL文↓ SELECT  基本コード,  MIN(大分類) AS 大分類,  (SELECT MIN(中分類) FROM tableA WHERE 大分類 = (SELECT MIN(大分類) FROM tableA) GROUP BY 大分類) AS 中分類 FROM tableA GROUP BY 基本コード 中分類を求める場合の、大分類の指定の仕方が悪いのはわかるのですが、どう直したら良いのか分からず困っています。 宜しくお願いします。