• ベストアンサー

ACCESSのSQLで・・・

ACCESS2003を使用しています。 氏名の苗字と名前の間にある空白をSQLで取り除きたいのですが、どのようにしたらいいのでしょうか? 教えて下さい。 そして空白を取り除いた後、空白なしの氏名と住所の入った別のテーブルと結合したいのです。 これも合わせて教えて下さい。 よろしくお願いします。

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

  • ベストアンサー
  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.3

select [テーブルB].[氏名], 住所 from テーブルA, テーブルB where Replace([テーブルA][氏名], " ", "") = [テーブルB].[氏名]; こんな感じで。

cha-chai
質問者

お礼

ありがとうございます!早速やってみます。

その他の回答 (2)

  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.2

>氏名の苗字と名前の間にある空白をSQLで取り除きたいのですが、どのようにしたらいいのでしょうか? Replace関数を使用します。 select Replace([氏名], " ", "") from テーブル名; こんな感じ。データそのものを更新していいのでしたら更新クエリーで実行しちゃってください。 >そして空白を取り除いた後、空白なしの氏名と住所の入った別のテーブルと結合したいのです。 空白なしの氏名と、別のテーブルのどのフィールドと結合するのですか?

cha-chai
質問者

お礼

ご回答ありがとうございます。 二番目に質問した内容は、下記のとおり例を出してみたのですが、お分かり頂けますでしょうか? 何にしろ、すぐ回答頂きありがとうございました。

  • Gin_F
  • ベストアンサー率63% (286/453)
回答No.1

> 氏名の苗字と名前の間にある空白をSQLで取り除きたいのですが、 Replace 関数を使えば、空白を取り除くことができます。 ただし、空白で区切られているものを分割するのは簡単ですが、区切りがないデータを 後で区切りたいといった場合は、不可能になりますよ。 現在、空白1文字で区切ってあるのなら、そのままの方がいいような気がしますけど。。 Replace([フィールド名]," ","") クエリで、上記のようにすれば取り除けると思います。 > 空白なしの氏名と住所の入った別のテーブルと結合したいのです。 こちらは、質問の意図がよく分かりません。 何のフィールドを元に、それぞれのテーブルを関連付けるのでしょうか??

cha-chai
質問者

お礼

説明が下手なので、例をあげますね。 Aというテーブルには氏名「山田 花子」や部署名など入っていて、 Bというテーブルには氏名「山田花子」と住所や電話番号などが入っています。 AとBを氏名で関連付けて一つにしたいのです。 お察しいただいていると思いますが、ACCESSは最近さわり始めたばかりでよくわかっていません。

関連するQ&A