sql >> データベース >  >> RDS >> Mysql

MySQLを使用したselectクエリでCASE、WHEN、THEN、ENDを使用する

    Select LNext.player As NextPlayer
    From lineups As L
        Left Join lineups As LNext
            On LNext.BattingOrder Between 11 And 20
                And LNext.BattingOrder  = Case
                                            When L.BattingOrder  = 19 Then 11
                                            Else L.BattingOrder  + 1
                                            End
    Where L.battingOrder Between 11 And 20
        And L.active = 1
    

    実際、あなたはそれを家と外の両方でそのように扱うようにすることができます:

    Select LNext.player As NextPlayer
    From lineups As L
        Left Join lineups As LNext
            On LNext.BattingOrder  = Case
                                        When L.BattingOrder  = 19 Then 11
                                        When L.BattingOrder  = 9 Then 1
                                        Else L.BattingOrder  + 1
                                        End
    Where L.active = 1
    



    1. PL / SQLDeveloperを使用してリモートOracleDBに接続するにはどうすればよいですか?

    2. タイムスタンプ(自動)はいつ更新されますか?

    3. mysqlコマンドラインの表示設定を調整するにはどうすればよいですか?

    4. エラー集計関数を回避する方法はWHEREでは許可されていません