アプリ版:「スタンプのみでお礼する」機能のリリースについて

アクセス2003を使っています。
ユニオンクエリを使って複数のクエリを結合しました。
その後、SQLで結合したクエリをテーブルにする為、

SELECT Qユニオンクエリ.* INTO T統合
FROM Qユニオンクエリ;

という、SQLを使ってテーブルにしました。

できあがったテーブルのデータ型が希望通りになっていないので、
データ型を変更して、常にそのデータ型で処理したいので保存しておきたいと思います。

しかし、データを入れる度に、前述のユニオンクエリを使い、再びそのクエリをテーブルにするという処理を行います。
その際にデータ型がまた変わってしまいます。

対処方法はあるでしょうか?

よろしくお願いします。

A 回答 (4件)

最初の回答を参考にしていただければ良いのですけどね。


SELECT 研修コード,開講月,社員コード,…
CDate(1回目採点日) As 1回目採点日,…
INTO T統合 FROM Qユニオンクエリ
但し、空文字列、Null、日付と解釈できない文字列が出てこないという
前提です。
    • good
    • 0

固定でやるのならテーブル作成ではなく


テーブルを事前確保しておき
全レコード削除後に

INSERT INTO T統合
SELECT Qユニオンクエリ.*
FROM Qユニオンクエリ;

としてレコード追加方式をとるのも可能かと思いますが
    • good
    • 0

えっ、列じゃないの?行は無理です。

    • good
    • 0
この回答へのお礼

訂正させて頂きます。
列です。
失礼致しました。

お礼日時:2009/06/30 14:37

例えば、1列目は日付なのに、文字列になってしまうとか・・・


その場合は明示的な型変換を行います。
SELECT CDate(1列目) AS 日付,・・・ INTO 統合 FROM Qユニオンクエリ
この場合は*ではなく、全フィールドを名前で指定します。
但し、複数のクエリで*を使い、しかもテーブル毎にフィールド名が
違う場合は列の名前が同じになるよう*を使わず、AS句で名前を一致
させます。こうしないと、条件によりフィールドが存在しないという
エラーになることがあります。
    • good
    • 0
この回答へのお礼

早速の回答ありがとうございます。
nda23様のおっしゃる通りにやってみたところ、私の力不足から上手くいきませんでした。

結合したクエリ名をQユニオンクエリとしています。
このQユニオンクエリの中身は
1行目に研修コード(数値型)
2行目に開講月(テキスト型)
2行目に社員コード(数値型)
  ・
  ・
  ・
10行目に1回目採点日(テキスト型)
  ・
  ・
  ・
となっています。
この10行目をテキスト型から日付/時刻型にしたいと思っています。

お手数をおかけしますが、よろしくお願いします。

お礼日時:2009/06/30 11:42

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す