Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Sử dụng CASE, WHEN, THEN, END trong một truy vấn chọn lọc với MySQL

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

Trên thực tế, bạn có thể làm cho nó xử lý cả ở nhà và ở xa như vậy:

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MYSQL - nhận giá thầu thấp nhất từ ​​nhóm bảng theo sản phẩm (kết quả lạ)

  2. tìm số hàng trong kết quả mysql trả về (nodejs)

  3. Thêm cột sau một cột khác

  4. Thông báo MySQL 5.6 EOL

  5. php + mysql:chèn một mảng php vào mysql