• ベストアンサー

フィールドを結合して検索

お世話になります。 データベースには、「name1」「name2」と 2つのフィールドに姓名が分かれて入っています。 検索で、「山田太郎」と入力されたとき、 「name1」「name2」を結合した列で抽出したいのですが どのようにSQLを書けばいいのでしょうか? よろしくお願いします。

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

  • ベストアンサー
  • kokorone
  • ベストアンサー率38% (417/1093)
回答No.1

name1 || name2 as fullname ではいかがでしょうか?

angelinaane
質問者

お礼

できました! ありがとうございました。

関連するQ&A

  • 2つのデータを結合して検索

    MySqlを使用しています。 ------------------ | 苗字 | 名前 | ------------------ | 山田 | 太郎 | | 山田 | 次郎 | | 山田 | 三郎 | ------------------ 上記のようなデータベースを作った場合に 氏名で検索したいのですがどうしたらよいでしょうか? LIKEを使った場合、山だけ、郎だけでは引っかかるのですが 山田太郎を検索されると引っかかりません。 データの結合したものを検索対象にすることはできるでしょうか? よろしくお願いします。

  • 抽出したデータの結合

    困ってる点があります。 抽出したフィールドの文字列を結合させるにはどうしたら良いでしょうか。 例) studentテーブルに「id」「name」という二つのカラムがあるとします。 抽出したidとnameをスラッシュ(/)を挟んで結合したいです。 select id,name from student →このSQLを実行すると 「001,相沢」が出力されるとすると 「001/相沢」となるように抽出したいと思っております。 SQLが初心者なものでどなたか教えてください。 よろしくお願いいたします。

  • フィールドを結合して検索するには

    フィールドA B Cを結合してある文字列として検索したいです。 フィールドタイプは↓です。 A:datetime型 B:datetime型 C:int(11)型 フィールドA B Cを結合する方法を教えてください。

    • ベストアンサー
    • MySQL
  • SQL Server2008 Express の文字列検索について

    SQL Server2008 Express の文字列検索について 検索対象のフィールド内にスペースが入っている場合に  スペースを無視して検索をすることができるでしょうか? 例 検索文字列 山田太郎 検索対象 山田 太郎 or 山田太郎 上記2つのフィールド値を含むレコードが両方表示されるような方法はありますでしょうか。

  • 2つフィールドを連結して検索するには

    MySQLの初心者です。よろしくお願いします。 1つのテーブルにある2つのフィールドのうち、どちらかにキーワードが入っている場合(両方に入っている場合も含む)を抽出したいのですが、検索するキーワードが1個の場合は、下記のようにすれば、うまく動くのですが、 ●1個のキーワードで検索する場合 (例として、2つのフィールドのうちどちらかに「山」のキーワードが入っている場合を抽出) select * from table WHERE (item_name LIKE "%山%" or outline LIKE "%山%" ) ●テーブルの内容(テーブル名:table) item_name | outline ==========+========= 山がある + 山と川 ----------+---------- 山がある + 川と森 ----------+--------- 山がある + 谷と林 --------------------- 質問したいことは、上記のテーブルから、item_nameとoutlineのフィールドのうち、2つのキーワード「山」と「川」が両方含まれるレコードを抽出したいです。上記のテーブルでいうと、抽出の結果、1行目と2行目が抽出したいのです。 ちなみに、下記のように記述したら、上記のテーブルで1行目だけ抽出されます。 select * from table WHERE (item_name LIKE "%山%" and item_name LIKE "%川%" or outline LIKE "%山%" and outline LIKE "%川%" ) 他にも、下記のように試してみたのですが、うまく抽出できませんでした。 SELECT * FROM table WHERE (concat(item_name,outline) LIKE '%山%' and concat(item_name,outline) LIKE '%川%') item_nameとoutlineのフィールドを結合して、結合した文字列で、「山」と「川」の両方が入っているレコードを抽出する方法はありますか? 2つのフィールドの文字列をあわせたなかから、「山」と「川」のキーワードが両方含まれるレコードを抽出したいのですが、何かよい方法はありますでしょうか。ご回答よろしくお願いいたします。

    • ベストアンサー
    • MySQL
  • Access2003 式ビルダでのLikeについて教えてください

    Acccess初挑戦の状態で困っております。 例えばデータベース内の名前で「山」の文字が含まれる名前を抽出させたい場合、「クエリの抽出条件でLike "*山*"」とすることで抽出できるのはわかるのですが、フォームでマクロの式ビルダを用いて同様の抽出を行いたいのです。 「顧客データ」のテーブルにある「お客様名」のフィールドから、「検索フォーム」の「名前検索」に入力されたキーワードを含むものを抽出させるために、以下の用に式ビルダで作成したのですが、 [顧客データ]![お客様名]=[Forms]![検索フォーム]![名前検索] 完全に一致する場合しか抽出してくれません。 データベース内に「山田 太郎」の名前があったとして検索フォームで「山田 太郎」と入力すると抽出されます。これを「山」と入力しただけで「山田 太郎」が抽出されるようにしたいのです。 Likeの演算子を用いてアスタリスクを使用すれば、できるのかなとは思うのですが、式ビルダへの記述方法がわかりません。 アドバイス頂ければ助かります。

  • 一つのテキストフィールドで抽出データを変えたい

    いつもお世話になっております。 早速ですが、一つのテキストフィールドで2種類の抽出条件を検索したいのです。 sql="select * from A where (code>='" & str &"' or name>='" & str &"')" のようにSQLへ問い合わせしております。 ユーザーが検索するときにcodeで検索かけるかmameで検索かけるか分からないので、どちらが入力されても検索できるようにしたいのです。 ちょっと変わったことをしていまして、codeが「0123」以上のものまたはnameが「あああ」以上のものを検索したいです。 sql="select * from A where (code='" & str &"' or name='" & str &"')" のように一意のものを検索することは出来ております。 また、それぞれ sql="select * from A where (code>='" & str &"')" sql="select * from A where (name>='" & str &"')" ではどちらも検索出来ております。 これを上記のようにORでくっつけるとnameのほうだけ検索可になりました。 設定方法が間違えていますでしょうか? わかる方がいましたら、ご協力お願いします。

  • ASPでデータベースを結合して表示させる方法について

    こんばんわ。 今、ASPでAccessにデータを登録したり削除したり、Accessのデータを検索したりするページを作ってみています。 登録はうまくできるようになったのですが、文字列をキーにしてデータベースを検索し、その結果をASPで表示させる際、データを結合して表示させることってできますでしょうか? 具体的には、 アクセスのフィールド名は名前(姓)、名前(名)と別れているのですが、ASPで表示させるときは一覧表の中で、名前と姓をくっつけて、表示させたいと思っています。 <アクセス> 名前(姓) | 名前(名) | 生年月日 山田   |  太郎  | 1900/8/1 <ASPでの表示> 名前     | 生年月日 山田 太郎 | 1900/8/1 以上、宜しくご教授ください。。

  • PHPで部分一致検索をしたい

    PHPの勉強をしています。 簡単なPHPを作成し、MySQLからデータを持ってきたいのですが、 上手くいきません。 完全一致で入力すれば、該当するものがヒットしますが、部分一致となると何も表示されなくなってしまいます。 検索文字列 = 山田太郎   →検索OK 検索文字列 = 山田 →検索NG となります。 山田と入力すれば、該当するデータを全て表示するにはどうすればいいのでしょうか。 宜しくお願いします。 //名前 if(!empty($name)) { $name = addslashes($name); $where = "name = '$name' && "; } else if(preg_match("/^(?!ab$)[a-z0-9]+$/", $name)) { $name = addslashes($name); $where = "name = '$name' && "; }

    • 締切済み
    • PHP
  • ファイルメーカー フィールド全検索

    ファイルメーカーPro5(Win)を使用している初心者です。 ------------------------------- 店名,従業員1,従業員2,従業員3 ------------------------------- 例えば山田太郎さんを検索しようとする場合、従業員1に入っているのか、2に入っているのか、3に入っているのかがわからないため、それぞれのフィールドで何度も検索をかけなければなりません。 希望としては1回の検索で、全てのフィールドの検索が出来ればと思っています。 初心者のため、こんな質問の仕方しかできませんが、どうぞ宜しくお願いします。