同じ行に二つの住所を出したい、SQLの組み方を教えてください

このQ&Aのポイント
  • 質問者は同じ行に複数の住所を取得したいという要件を持っています。具体的には、個人IDごとに識別番号1と識別番号3の住所を同じ行に表示したいとのことです。
  • 現在のデータテーブルには個人ID、識別番号、住所の列があります。質問者は「識別1の住所」と「識別3の住所」を同じ行に表示したいと考えています。
  • 質問者が試した方法では、WHERE条件を使用するため、同じ行に2つの住所を取得することができませんでした。質問者は別の方法を探しているようです。
回答を見る
  • ベストアンサー

同じ行に、二つの住所を出したい。

同じ行に、二つの住所を出したい。 下記のような場合、どのようなSQLを組めばよろしいでしょうか。 ★FROM表 個人ID 識別番号 住所 A 1 東京都品川区~ A 2 北海道札幌市~ A 3 青森県弘前市~ B 1 埼玉県川口市~ B 2 福岡県福岡市~ B 3 宮崎県宮崎市~ ・   ・    ・ ・   ・    ・ ・   ・    ・ ★出力結果 A   東京都品川区~ 青森県弘前市~ B   埼玉県川口市~ 宮崎県宮崎市~ ↑    ↑        ↑ 個人ID 識別1の住所   識別3の住所 イメージとしては以下のような感じです。 識別1:現住所、識別2:保証人住所、識別3:本籍住所 上表を例にすると、 Aさんの現住所は東京都、本籍地は青森県 Bさんの現住所は埼玉県、本籍地は宮崎県 といったかんじです。 ただWHERE ANDでは、どちらかしか引っ張って来れないので、 なにか他の方法がありましたら、教えてください。 よろしくおねがいします。

  • Oracle
  • 回答数1
  • ありがとう数1

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

  • ベストアンサー
  • Idler999
  • ベストアンサー率27% (63/231)
回答No.1

テーブルに別名を付けて引っ張ればできますよ。 仮にFROM表の名前がJUSHOだったとすると SELECT A.個人ID,A.住所,B.住所 FROM JUSHO A,JUSHO B WHERE A.個人ID = B.個人ID AND A.識別番号 = 1 AND B.識別番号 = 2 こんな感じで。

aochan1031
質問者

お礼

ありがとうございます。うまくできました。 これからもおねがいします。

関連するQ&A

  • 住所情報がない場合であっても、NULLで抽出してきてほしい。

    住所情報がない場合であっても、NULLで抽出してきてほしい。 以前、ここで質問していただき、解決したのですが、 新たな問題が発生したので、改めて質問させてください。 他にも色々なテーブルと連携してSQLで情報を抽出しているのですが、 住所情報の入っているテーブルに住所情報がない人が居ます。 ただし、その人の住所以外の個人情報もピックアップして出力したいので、 住所情報が無い人は、住所の列はNULLで出力したいです。 下記に以前質問した時の情報も載せます。 ・下記テーブルの他にもいろいろなテーブルと結合させています。 ・各テーブルとの結合は個人IDで行っています。 方法はどんな形でも構いません。 もっと細かい情報が欲しい場合は、適宜補足します。 本当は今日中ですが、今週中には仕上げないといけないので、 分かる方がおりましたら、ご回答よろしくお願いします。 ―――以下、前回質問した情報――――――――――――――― 同じ行に、二つの住所を出したい。 下記のような場合、どのようなSQLを組めばよろしいでしょうか。 ★FROM表 個人ID 識別番号 住所 A 1 東京都品川区~ A 2 北海道札幌市~ A 3 青森県弘前市~ B 1 埼玉県川口市~ B 2 福岡県福岡市~ B 3 宮崎県宮崎市~ ・   ・    ・ ・   ・    ・ ・   ・    ・ ★出力結果 A   東京都品川区~ 青森県弘前市~ B   埼玉県川口市~ 宮崎県宮崎市~ ↑    ↑        ↑ 個人ID 識別1の住所   識別3の住所 イメージとしては以下のような感じです。 識別1:現住所、識別2:保証人住所、識別3:本籍住所 上表を例にすると、 Aさんの現住所は東京都、本籍地は青森県 Bさんの現住所は埼玉県、本籍地は宮崎県 といったかんじです。 ただWHERE ANDでは、どちらかしか引っ張って来れないので、 なにか他の方法がありましたら、教えてください。 よろしくおねがいします。

  • エクセルでのデータ集計方法について

    エクセルで、【1.元データ】のようなデータがシート毎に5,000社ほどあります。このデータを各市区町村ごとに集計を取りたいのです。 【1.元データ】 A社 ┃ 東京都品川区戸越 B社 ┃ 東京都新宿区下落合 C社 ┃ 東京都新宿区新宿 D社 ┃ 埼玉県川口市柳崎 E社 ┃ 神奈川県川崎市中原区丸子通 そこで、ピボットテーブルを使って集計したかったのですが、同じセルの中に番地までデータが入っていて【2.集計後のイメージ】のような意図している集計が出来なかったです。 【2.集計後のイメージ】 品川区 ┃ 1 新宿区 ┃ 2 川口市 ┃ 1 川崎市 ┃ 1 これを解決するにはどういう集計の仕方をすればいいでしょうか? 現在はエクセル上で住所データで並べ替えをして数えて集計をしているのですが、時間がかかってしまうため、何かいい方法はありませんか?

  • Excel 住所分け

    A1 大阪府泉南市信達童子畑20 埼玉県吉川市中野338 東京都足立区鹿浜6-26-10 B1        C1      D1  大阪府       泉南市    信達童子畑20 埼玉県       吉川市    中野338 東京都       足立区    鹿浜6-26-10 都道府県/市区郡/町名・番地 と三つに分けたいです。 どうやったらできますか。

  • 住所の一部が合致する場合を抜き出して番号をつけたいのですが、 可能でしょうか。

    エクセルで、 住所の一部が合致する場合を抜き出して番号をつけたいのですが、 可能でしょうか。 具体的には、 住所リスト: 東京都港区台場~ 東京都葛飾区立石~ 東京都荒川区荒川~ 神奈川県横浜市西区~ 埼玉県さいたま市~ 上記に対し、 東京都港区=3番 東京都荒川区=4番 埼玉県さいたま市=5番 と一部が合致する値に番号をつけたいのです。 Vlockupでうまくいかないのですが、 教えていただけないでしょうか。 とても困っています。 何卒、よろしくお願いいたします。

  • エクセルSheet1,2を使っての行ごとでの値の返し方

    Sheet1にデータを行ごとに入れていきます。 Sheet2にSheet1のデータを行ごとに返します。 例えば下記のようなデータがSheet1にあります。 行/列  A     B     C    D     登録番号 申込み日  氏名   住所  1  h1234  15年2月  山田太郎 東京都品川区   2  k0022  14年8月  田中次郎 千葉県浦安市   3  m3651  15年1月  鈴木三郎 埼玉県川口市   4  g7890  13年6月  佐藤四郎 神奈川県横浜市 Sheet2のA1にSheet1の行3のデータを返すため3と入れます。登録番号を入れたいので、次のような関数を入れてみましたがうまく出来ませんでした。 =IF(ISNUMBER(A1),INDIRECT(Sheet1!A3&A1),"") 何がいけないのかわかりませんでした。 それに、出来れば登録番号の数字(全て4桁です)返したいのですが、さらに、MIDを使えばよいのですか?説明が十分かどうかわかりませんがアドバイス宜しくお願い致します!

  • SQL文 抽出条件 複数の場合のやり方

    下記のような状況では どのようにSQL文を書けばよいのか教えてください。 例) テーブルA 氏名ID 住所 12345 東京都XXX区XXXX町1-1-1 12346 埼玉県XXX市XXXX町1-2-1 ・・・ テーブルB 住所(詳細に記載されているものもあれば、都道府県レベルのものもある) 東京都XXX区XXXX町 東京都▲▲区○○ 北海道 埼玉県◆◆市 ・・・ テーブルBに書いていある住所で始まる 全ての氏名IDを テーブルAから取り出したい。

  • 2つのセルで、条件を満たす時の数。

    シート1のA列には住所が入力されてします。   例:東京都港区・・・,埼玉県さいたま市・・・ 同様に、B列には通勤手段が入力されています。 例:電車,徒歩 A  住所    B  手段  東京都・・・  徒歩  東京都・・・  電車  埼玉県・・・  電車  千葉県・・・  自転車 別のシートのセルに、東京都に在住で徒歩の人数を表示させたいのです。 =COUNTIF(sheet1!A1:A3,"東京都*")までは、出来るのですが・・・。2つになると無理です。 よろしくお願いします。

  • 埼玉県、東京都の古着屋をさがしています

    埼玉県の川口市周辺か、東京都北区周辺の古着屋を探しています。 埼玉県の南部でも知っている方がいたら教えてください 回答よろしくお願いします。

  • エクセルで住所録管理データベースで

    エクセルで住所録管理データベースで (例) C列         D列 東京都台東区上野   1-234-1 神奈川県横浜市山手  2-84-6 埼玉県草加市弥勒   51-98 と入力されてますが A列にC列から 県名を抽出 B列に市・区名を抽出を 関数を使ってできないでしょうか? 又、C列の県名と市・区名を消したいのですが

  • エクセルでセルの中の文字列の中から特定の文字を検索

    エクセルで文字列の中から特定の文字を検索し”ある””なし”の識別をする方法はあるのですか? たとえば、A1,A2,A3,A4・・・・にそれぞれ東京都、神奈川県、埼玉県、京都府・・・・とあって”都”で検索すると、B1,B2,B3,B4・・・・には1,0,0,1・・・・のようになるといいのですが・・・・よろしくお願いいたします。