ExcelのVLOOKUP関数の動作をMySQLで再現する方法

このQ&Aのポイント
  • ExcelのVLOOKUP関数の動作をMySQLで再現する方法を教えてください。
  • MySQLのテーブルにおいて、Sheet2のような出力結果・参照方法を実現する方法はありますか?SELECT文での出力がベストな方法であればそれを教えてください。
  • MySQLのレコードをExcelで処理する際には、CSV形式で出力するのが効果的ですか?他に効果的な方法があれば教えてください。
回答を見る
  • ベストアンサー

ExcelのVLOOKUP関数の動作をMySQLでやる方法ありますか?

ExcelのVLOOKUP関数の動作をMySQLで やりたいのですが、方法はあるのでしょうか? たとえばExcelでは Sheet1に顧客情報 A列      B列  C列 利用者コード  名前 電話番号 AAA      田中 03-0000-0000 BBB      佐藤 03-0001-0001 CCC      山口 03-0002-0002 Sheet2に利用履歴 A列 B列      C列 No. 利用者コード 名前 1  AAA  =VLOOKUP(B2,Sheet1!A:C,2,0) 2  CCC  =VLOOKUP(B3,Sheet1!A:C,2,0) 3  AAA  =VLOOKUP(B4,Sheet1!A:C,2,0) 4  BBB  =VLOOKUP(B5,Sheet1!A:C,2,0) 5  CCC  =VLOOKUP(B6,Sheet1!A:C,2,0) ExcelではSheet2を上記のようにすれば 利用者コードからSheet1のB列に入力されて いる名前を参照できますよね。 MySQLのテーブルは テーブル1はSheet1と同じ テーブル2はNo. 利用者コードだけで名前はありません。 Sheet2のような出力結果・参照方法を MySQLでやる方法はありますか? SELECT文で出力できるのならベストですが その他の方法がありましたらそちらの 方法も教えていただきたいです。 やはりMySQLのレコードをCSV形式か何かで出力して Excelで処理したほうがいいんでしょうか? どなたかご教授願います。

  • JAUZ
  • お礼率28% (4/14)
  • MySQL
  • 回答数1
  • ありがとう数1

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

  • ベストアンサー
回答No.1

基本的なジョインだと思いますが、何が分からないのでしょうか? select t2.*,t1.名前 from t2 inner join t1 on t2.利用者コード=t1.利用者コード order by t2.No それとも「関数で実装したい」といったことでしょうか?

JAUZ
質問者

お礼

ありがとうございます。その基本的なJoinを知りませんでした。 教えていただいたコマンドで希望通りの動作ができました。

関連するQ&A

  • エクセル 関数を使わずにデータを取りたい

    EXCELを使ってデータ入力をしたいです。 下の図のように、シート1のA列にコードを入力すると、シート2のテーブルから値を引っ張ってくるようにしたい。 たとえば、シート1のA1に"C001"を入力したら、B1に"赤"が自動入力されるようにしたい。 シート1 A列 B列 行1 C001 シート2 A列 B列 行1 C001 赤 行2 C002 青 行3 C003 黄色 ただし、シート1のB列の値は、入力後に編集するため、ここには計算式を入れたくないのです。 なので、通常ならばB列にVLOOKUP関数を使えばすむことですが、計算式を入れずに上記を実現する方法を教えてください。

  • VLOOKUPでお願いします

    VLOOKUPは初めてです。 (シートA)     A       B     C  1  コードNO.   名前   電話番号 2  0011112    佐藤   1111-3333 3  0022222    鈴木   1234-5544 4  1155444    山田   5566-1133 5  0333777    山下   8877-4477 (シートB)     A       B     C  1  コードNO.   名前   電話番号 2  0022222     3  0333777    シートAが元データです。 シートBのA列に他からコピーしたコードNO.を貼り付けると自動的に シートAからに該当する名前と電話番号をシートBのB列C列に表示させる。 どうか宜しくお願いいたします。

  • Excel VLOOKUPで複数の関数

    どなたかわかる方教えて下さい!! わかりにくい説明かと思いますが、よろしくお願い致します。 Aシートにコードが入力されています。 Bシートにコード、文字列、数値が入力されています。 AシートのコードでVLOOKUPを使い、Bシートから数値を呼ぶことはできるのですが、 数値が空白の場合は、空白にする。B列の文字も検索したい場合はどのようにすればよろしいでしょうか? 例 Aシートには、コード001が入っています。 Bシートから、コード001、「あ」の行を検索し、数値をもってきて、空白の場合は空白にしたいです。     A列   B列   C列   D列 1行  001   あ   10   空白 2行  001   い   20   30 3行  002   あ   30   空白

  • EXCEL 複数条件(VLOOKUP?)について 

    EXCEL 複数条件(VLOOKUP?)について  シート1 A列 B列 C列 D列     名前 日付 色  サイズ(数値) シート2 A列 B列 C列 D列     名前 日付 色  サイズ(数値) シート1とシート2のD列を比較させて違う場合をシート1の別の列に表示させたいのですが、 現在はA,B,Cを連結し、VLOOKUPにて処理しています。 今後件数が5000件を超える予定となっており、このままではPCが止まってしまう恐れがあるので 別の方法を模索しているのですが、何か良い方法はないでしょうか?

  • VLOOKUP関数について教えて下さい

    Excel97を使用しています。 VLOOKUP関数を使って二つのデータを照合したいのですが、 A    B     C    D    E        コード|内容 |    |コード |内容 | 0001 |ああ |ああ  |0001  |ああ | 0002 |ああ |    |0002  |   | 0003 |   |    0|0003  |   | D,E列の範囲からA列のコードを検索かけたいのですが、 =VLOOKUP(A2,ひかく,2,0)        ↑       D,E列 だと内容欄に空欄が入っていると0になってしまいます。 0でなく空欄にしたい場合はどうしたらよいのでしょうか?

  • Excel 2007 vlookupについて

    Excel 2007 vlookupについて 同じシートでA列とB列の2列にある型番で一致するものをC列に表示させたいです。 実際A列の型番は一意の番号です。 B列の型番は同じ番号がございます。 型番1は100行ぐらい。 型番2は300行ぐらい。 C列にどのようなvlookupを記載すればよろしいでしょうか。 ※C2以降に結果が表示されるようにしたいです。

  • エクセルでVLOOKUP関数を使用すると、データ数が多くてフリーズしてしまいます。

    エクセルでVLOOKUP関数を使用すると、データ数が多いくてフリーズしてしまいます。どうにかして解決できないでしょうか。 エクセルでVLOOKUP関数をしようして、データ数が多いとフリーズしてしまうのですが、何か解決方法ありますでしょうか。 エクセルでVlookUpを使い、Sheet1にsheet2から一致したデータを読み込もうと思うのですが、 データが重くなりすぎて、PCがフリーズしてしまいます。 どうにかして、簡単にVlookupと同じように一致したデータを抽出することはできないでしょうか。 sheet1では B列を入力して、C列を抽出したいです。 A列_____ ___B列_____ _____ _____ _____ ___C列 No_____ 入力項目_____ _____ _____ _____ 保存場所 1_____ #EXTINF:213,08___________ suzuki I:\music\suzuki 2_____ #EXTINF:223,08___________ satou U:\music\satou 2_____ #EXTINF:223,121__________kondou G:\music\kondou ↑ =VLOOKUP(B2,sheet2!$A$2:$B$40000,2,FALSE) =VLOOKUP(B3,sheet2!$A$2:$B$40000,2,FALSE) =VLOOKUP(B4,sheet2!$A$2:$B$40000,2,FALSE) sheet2のデータは A列_____ _____ _____ _____ ____B列 項目1_____ _____ _____ _____ 保存場所 #EXTINF:213,08_____ #suzuki I:\music\suzuki #EXTINF:223,08_____ #satou U:\music\satou #EXTINF:223,121____#kondou G:\music\kondou

  • Excelの関数が分かりません。Vlookupで出来ると思ったのですが、出来ませんでした。

    すいません。自分が馬鹿なもので・・・さっぱりです。 A  B  C  D   E 1  梨 柿 苺 山下 2 芋 米 栗 鈴木 3 鳥 馬 羊 松本 4 魚 犬 猫 田中 というシートがあって。 別シートで A  B  C 1  猫 田中 2 芋 鈴木 3 梨 山下 4 犬 田中 というように、B列を検索してC列に人の名前を返す 例えば「猫」を前のシートから検索して一致する 「田中」の名前を返したいとき、どのような関数を使えばいいですか? vlookupだと検索範囲が1列しか検索できないから、どうしても複数列を検索したいもので・・・

  • エクセルのVLOOKUPの複数参照について

    エクセルのVLOOKUPの複数参照について シート2(kokunai)に A列 B列 1000 シャープ 1010 ソニー 3050 パナソニック とあります。 シート3(yunyuu)に A列 B列 2000 IBM 2001 HP とあります。 シート1のC列に打ち込んだ数字を元にD列にメーカー名を表示したいのです。 D列に IF(C1="","",IF(ISERROR(VLOOKUP(C1,kokunai,1,0))="FALSE",VLOOKUP(C1,kokunai,2,0),VLOOKUP(C1,yunyuu,2,0))) と数式を打ちましたが、エラーが帰って来ます。 どうすれば良いでしょうか?

  • エクセル 関数 ISERROR VLOOKUP

    エクセル関数でご教授お願いします。 今「LIST」シートのA列に品番、B列に単価が入力されています。 これを「入力」シートのA列1行目に品番を入力して、B列1行目に単価を引っぱってくる関数を作りました。 以下関数です。(「入力」シートのB列の関数です) =IF(ISERROR(VLOOKUP(A1,LIST!$A$1:$B$3,2,FALSE)),"品番ミス",VLOOKUP(A1,LIST!$A$1:$B$3,2,FALSE)) 品番が間違っている場合は”品番ミス”と入力されます。 この状態で問題なのは、入力シートのA列に何も入力されていない時に、B列に品番ミスと入ってしまう事です。 何とか、空白にしたいのですがいい方法はありませんでしょうか?