0

私はしばらく mysql を使用してきましたが、今まで条件を使用しなければならないという問題に遭遇したことはありませんでした。基本的に私はこれを行う必要があります (私が説明する最善の方法は、mysql が php のような条件をサポートしているかのように書くことです):

SELECT `Gender`=='male' ? '0.5' : '1' AS Col1 FROM Users

基本的に、すべての「男性」に 0.5 AS Col1、すべての「女性」に 1 を設定したいと考えています。

例えば:

UID Gender
1   male
2   female
3   male

返す必要があります:

UID Col1
1   0.5
2   1
3   0.5

実装が気になる方はどうぞ。ユーザーの共通の習慣に基づいて、「誰をフォローするか」をユーザーに推奨したいと考えています。(男性に 0.5 は、男性の 2 倍の女性をフォローしていることを意味します)。

これはどのように行うことができますか?

4

3 に答える 3

4

使用できます

SELECT if(`Gender`='male','0.5','1') AS Col1
FROM Users

また

SELECT case when `Gender`='male'
            then '0.5'
            else '1'
       end AS Col1
FROM Users
于 2012-08-17T06:31:44.097 に答える
3
select uid,
    case gender
        when 'male' then '0.5'
        when 'female' then '1'
    end as genderindigit
from
    users
于 2012-08-17T06:32:15.580 に答える
2

試す

SELECT IF(`Gender` = 'male', '0.5', '1') AS Col1
FROM Users
于 2012-08-17T06:34:52.650 に答える