人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Mysqlで次のデータベースがあるとします。
[user]
(username)(domain_no)(password)
test 1 test
[domain]
(no)(domain_name)
1 test.com

このデータベースにtest@test.comがマッチするか検索するsql文を考えてください・・・。

●質問者: Sprint
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:MySQL password SQL test USER
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● kn1967
●30ポイント

http://dev.mysql.com/doc/refman/4.1/ja/counting-rows.html

SELECT COUNT(*)
FROM user LEFT JOIN domain ON user.domain_no = domain.no
WHERE user.username = 'test' AND domain.domain_name = 'test.com'
;

といったようなものでよろしいかしら?

◎質問者からの返答

すいません、みてもなにがなんだかわかりません(汗

ためしてみまーす!


2 ● ito-yu
●30ポイント

SELECT username||'@'||domain_name AS email,password FROM user u,domain d WHERE u.domain_no=d.id AND email='test@test.com';

こんなカンジでどうでしょう

◎質問者からの返答

ありがとうございます。

同じく試してみます!


3 ● chuken_kenkou
●100ポイント ベストアンサー

MySQLの質問をする場合は、使用バージョンを書きましょう。

表の列構成、表のデータ例と、得たい結果の例を示すと、具体的な回答を得られます。

select concat(username,'@',domain_name) as email,password
 from `user`,`domain`
 where domain_no=no
 and concat(username,'@',domain_name)='test@test.com'

MySQLの文字連結は、「||」といった記号でなく、concat関数を使用する必要があります。

MySQL AB :: MySQL 4.1 リファレンスマニュアル :: 6.3.2 文字列関数

◎質問者からの返答

MYSQL4.1です。

また書き漏れてた・・・。

メールアドレスは$local_part@$domainという関数で渡されます。

質問してて自分がよくわからなくなってきました・・・(汗

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ