-2

いわゆるPKと呼ばれる個別の関係を持つ2つのテーブルがあります。

Email     Gender  
a@a.cn    12345  
b@b.cn    12365

PK     String    
12345  MALE  
12365  FEMALE

メールと性別の文字列を取得するクエリはどのようになりますか?

 select 
  user.Email,
  users.Gender
from
  users,
values
4

3 に答える 3

4

JOIN2つのテーブルが必要になります。私の提案は、次のように、テーブル間にコンマを使用する代わりに、またはのJOINような ANSI 構文を使用することです。INNER JOINLEFT JOIN

select u.Email, v.String
from users u
inner join value v
   on u.Gender = v.PK

デモで SQL Fiddle を参照してください

JOIN構文について混乱している場合は、ここに結合の優れた視覚的な説明があります

于 2012-11-06T10:30:49.953 に答える
1

これはあなたが必要とするものです。

select user.Email, gender.String
from user, gender
where user.Gender = gender.String

それが役立つことを願っています。

于 2012-11-06T10:30:04.323 に答える
0

結合を使用する必要があります。

MySQLの場合

SELECT `user`.`Email`, `gender`.`String`
  FROM `user`, `gender`
  WHERE `user`.`Gender` = `gender`.`String`

MSSQLの場合

SELECT user.Email, gender.String
  FROM user, gender
  WHERE user.Gender = gender.String

出力:

+------------------+
| Email  |  Gender |
+------------------+
| a@a.cn | MALE    |
| b@b.cn | FEMALE  |
+------------------+
于 2012-11-06T10:31:01.053 に答える