クエリ1とクエリ2をクエリ3で結合するとクエリ3で「データ型が一致しません」と表示されます。
クエリ1のSQL文
SELECT Trim(Replace([PC管理台帳.使用者氏名]," ","")) AS 式1, PC管理台帳.新PC名, PC管理台帳.部署名, PC管理台帳.マシンベンダ名, PC管理台帳.マシンモデル
FROM PC管理台帳;
クエリ1では[使用者氏名]の苗字と名前のスペースを置換しました。
クエリ2のSQL文
SELECT 職員アカウント.職員番号, Trim(Replace([職員アカウント.氏名]," ","")) AS 式1, 職員アカウント.パスワード, 職員アカウント.メールアドレス
FROM 職員アカウント;
クエリ2では[氏名]の苗字と名前のスペースを置換しました。
クエリ3で[使用者氏名]と[氏名]が一致しているものを抽出したいです。
ちなみにクエリ3のSQL文は
SELECT [クエリ2].[式1], [クエリ2].[職員番号]
FROM クエリ1 INNER JOIN クエリ2 ON [クエリ1].[式1]=[クエリ2].[式1];
これでクエリ3をひらくと
「データ型が一致しません」
と表示されます。
どなたかアドバイスお願いします
No.1ベストアンサー
- 回答日時:
「データ型が一致しません」のエラーが発生するパターンのひとつに、『結合に使用している演算
フィールド(ご質問の件では式1が該当)の結果がエラーとなるレコードが含まれている』というのが
あります。
クエリ1・クエリ2の式1にはReplace関数が使われていますが、Replace関数の第1引数にNullを
指定すると、エラーになります。
従って、恐らく「PC管理台帳」テーブルの「使用者名」か、「職員アカウント」テーブルの「氏名」の
どちらか(或いは双方)が、空欄(Null)になったままのレコードがある可能性があります。
(なお、Trim関数は、第1引数がNullであってもエラーになりません)
上記推測が当たっていれば、
a)上記フィールドが空欄になっているレコードをなくす
(その上で、今後のことを考えると値要求を「はい」に設定しておくことをお勧めします)
b)式1の関数を下記のように変更する
のどちらかの対応をされれば、ご質問のエラーは解消されるものと思います。
式1の変更で対応する場合は、それぞれ以下のようにしてみてください:
(「[PC管理台帳.使用者名]」と「[職員アカウント.氏名]」は、それぞれ「[PC管理台帳].[使用者名]」と
「[職員アカウント].[氏名]」の誤記と判断して記述しています)
クエリ1:
Select Replace(Nz([PC管理台帳].[使用者氏名], ""), " ", "", 1, -1, 1) As 式1, PC管理台帳.新PC名, PC管理台帳.部署名, PC管理台帳.マシンベンダ名, PC管理台帳.マシンモデル From PC管理台帳;
クエリ2:
Select 職員アカウント.職員番号, Replace(Nz([職員アカウント].[氏名], ""), " ", "", 1, -1, 1) As 式1, 職員アカウント.パスワード, 職員アカウント.メールアドレス, From 職員アカウント;
Nz関数は、第1引数がNull(=文字列扱い不可の空白)だった場合に、第2引数の値に置換する関数
です。第2引数に「""」(空文字=文字列扱い可の空白)を指定することで、Replace関数がエラーに
なるのを回避しています。
Replace関数の一番最後の引数「1」は、半角/全角を区別させないためのものです。これにより、
スペースは全て削除されるため、Trim関数は不要になります。
(その前の「1, -1」は、それぞれ開始位置と置換する文字数の指定です。この辺りは、詳しくは
ヘルプを確認して下さい)
丁寧な説明ありがとうございました。
よろしければ下記の質問もお願いします。
http://oshiete1.goo.ne.jp/qa3987087.html?ans_cou …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL SQLです。下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 「昨年の各月の総降 1 2023/07/01 00:32
- Excel(エクセル) EXCELの外部データ取得ができない 1 2023/03/23 09:03
- SQL Server [SQLServer] テーブル名からカラム名を取得する 1 2022/08/23 21:20
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
- Excel(エクセル) Excel Powerクエリーの質問。あるクエリに一致する行だけ除外できますか? 1 2022/08/22 13:48
- MySQL 下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 「A,B組の女子の氏名のよみ。 1 2023/05/16 15:28
- MySQL SQLです。こんな感じですか?あってますか? うまくいきません教えてくださいお願いします 1 2023/07/08 15:27
- MySQL 下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 「名前(first name) 1 2023/06/24 13:03
- MySQL うまくいきません教えてくださいお願いしますSQLです。クエリ構文です。 1 2023/07/07 12:39
- PHP 【PHP/MySQL】コード上で生成したクエリを基に集計クエリを作りたい 1 2022/07/28 15:06
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
Accessで、1つの項目に複数の置換えを1度でするには?
Access(アクセス)
-
Accessのクエリで、replace関数を使い、データの中にある”をブランクに置き換えたいのですが
Access(アクセス)
-
抽出条件でデータ型が一致しません。のエラーメッセージが出る
Microsoft ASP
-
-
4
ACCESS抽出条件でデータ型が一致しません
その他(暮らし・生活・行事)
-
5
アクセスで#エラーを表示させない方法は?
Access(アクセス)
-
6
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
-
7
アクセスで数値型のフィールドにNullをいれたい
その他(データベース)
-
8
Access サブフォームでの選択行の取得
その他(データベース)
-
9
SQL文をVBAで流すと「型が一致しない」というエラーが
Visual Basic(VBA)
-
10
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
11
実行時エラー '3464': 抽出条件でデータ型が
Access(アクセス)
-
12
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
13
ACCESSのクエリで抽出条件「または」は9個までしかかけませんよね…
Access(アクセス)
-
14
「#エラー」の回避
Access(アクセス)
-
15
Accessを使って日付を比較したい
その他(Microsoft Office)
-
16
ACCESSのSQLで、NULLかNULLでないかの判定
その他(データベース)
-
17
sql update で 抽出条件データ型が一致しません。日付の未入力対策はありますか?
その他(データベース)
-
18
Accessで文字列の長さによって、フィールドの幅を自動で合わせる方法
Excel(エクセル)
-
19
ACCESS 「パラメータの入力」を消したい!!
Access(アクセス)
-
20
アクセス 項目毎にデータを横に並べる方法
Access(アクセス)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ACCESS クエリで重複データを最...
-
ACCESS クエリで、グループ化...
-
ACCESSでクエリを作成したら「...
-
月別の利用者実人員の集計方法
-
access・カウント結果がゼロで...
-
ACCESSにてフィールド間の最小...
-
「データベースまたはオブジェ...
-
access:連続データ入力
-
Access あるクエリを利用して...
-
ユニオンクエリについて
-
ASでつけた名前はWHERE条件にで...
-
ACCESSで2つのテーブル比較で...
-
クエリーからクエリーを呼ぶこ...
-
SqlServer2012 ビューとクエリ
-
Access VBAでパラメータクエリ...
-
アクセスのスナップショット
-
追加先の発見方法(SQL以外)
-
MSアクセスのクエリで結果が...
-
クエリで「データ型が一致しま...
-
ACCESSで2つのテーブルの合計値...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ACCESS クエリで重複データを最...
-
ACCESSでクエリを作成したら「...
-
access・カウント結果がゼロで...
-
ACCESS クエリで、グループ化...
-
「データベースまたはオブジェ...
-
ACCESS クエリー 抽出条件が...
-
クエリで「データ型が一致しま...
-
ACCESSにてフィールド間の最小...
-
追加先の発見方法(SQL以外)
-
access:連続データ入力
-
SQLで優先順位が高いレコードを...
-
ACCESS のクエリー実行に異常に...
-
Accessのクロス集計クエリから...
-
accessで選択クエリで得た全レ...
-
Access あるクエリを利用して...
-
ユニオンクエリについて
-
ACCESSでデータ削除すると「読...
-
Accessのフィルタ検索でデータ...
-
ACCESSで2つのテーブル比較で...
-
アクセスでフォームが更新でき...
おすすめ情報