- ベストアンサー
ACCESSのSQLで・・・
ACCESS2003を使用しています。 氏名の苗字と名前の間にある空白をSQLで取り除きたいのですが、どのようにしたらいいのでしょうか? 教えて下さい。 そして空白を取り除いた後、空白なしの氏名と住所の入った別のテーブルと結合したいのです。 これも合わせて教えて下さい。 よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
select [テーブルB].[氏名], 住所 from テーブルA, テーブルB where Replace([テーブルA][氏名], " ", "") = [テーブルB].[氏名]; こんな感じで。
その他の回答 (2)
- taka_tetsu
- ベストアンサー率65% (1020/1553)
>氏名の苗字と名前の間にある空白をSQLで取り除きたいのですが、どのようにしたらいいのでしょうか? Replace関数を使用します。 select Replace([氏名], " ", "") from テーブル名; こんな感じ。データそのものを更新していいのでしたら更新クエリーで実行しちゃってください。 >そして空白を取り除いた後、空白なしの氏名と住所の入った別のテーブルと結合したいのです。 空白なしの氏名と、別のテーブルのどのフィールドと結合するのですか?
お礼
ご回答ありがとうございます。 二番目に質問した内容は、下記のとおり例を出してみたのですが、お分かり頂けますでしょうか? 何にしろ、すぐ回答頂きありがとうございました。
- Gin_F
- ベストアンサー率63% (286/453)
> 氏名の苗字と名前の間にある空白をSQLで取り除きたいのですが、 Replace 関数を使えば、空白を取り除くことができます。 ただし、空白で区切られているものを分割するのは簡単ですが、区切りがないデータを 後で区切りたいといった場合は、不可能になりますよ。 現在、空白1文字で区切ってあるのなら、そのままの方がいいような気がしますけど。。 Replace([フィールド名]," ","") クエリで、上記のようにすれば取り除けると思います。 > 空白なしの氏名と住所の入った別のテーブルと結合したいのです。 こちらは、質問の意図がよく分かりません。 何のフィールドを元に、それぞれのテーブルを関連付けるのでしょうか??
お礼
説明が下手なので、例をあげますね。 Aというテーブルには氏名「山田 花子」や部署名など入っていて、 Bというテーブルには氏名「山田花子」と住所や電話番号などが入っています。 AとBを氏名で関連付けて一つにしたいのです。 お察しいただいていると思いますが、ACCESSは最近さわり始めたばかりでよくわかっていません。
お礼
ありがとうございます!早速やってみます。