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

Lựa chọn mức lương cao nhất

  SELECT name, wage, highhours
    FROM wagetable
   WHERE name like 'Brian' OR
         name like 'Default'
ORDER BY name,
         highhours desc

Truy vấn này hoạt động khi truy vấn cho Brian , nhưng để nó hoạt động với bất kỳ tên nào thì Default sẽ được lưu trữ trong cơ sở dữ liệu của bạn bắt đầu bằng ký tự đặc biệt [email protected] , bởi vì số và chữ cái đứng đầu trong việc sắp xếp.

Một cách khác là bạn có thể tạo một cột khác trong bảng, vì lợi ích của đối số của chúng tôi, được gọi là priority phải có giá trị 0 cho Default1 cho bất kỳ người dùng nào khác. Sau đó, bạn có thể chỉ cần làm:

  SELECT name, wage, highhours
    FROM wagetable
   WHERE name like 'Brian' OR
         name like 'Default'
ORDER BY priority desc,
         highhours desc

Tất nhiên đó là giải pháp tương tự, nhưng đó là một cách tiếp cận tốt hơn là dựa vào một ký tự đặc biệt trong tên của các giá trị mặc định.




  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 chọn để cập nhật - nó không khóa các hàng đích. Làm thế nào để tôi chắc chắn rằng nó không?

  2. Làm thế nào để GỌI MỘT THỦ TỤC trong MySQL?

  3. Đặt giá trị AUTOINCREMENT trong bảng django

  4. Tôi có nên chuyển biến $ mysqli của mình cho mỗi hàm không?

  5. Kích hoạt MySQL Before Delete để tránh xóa nhiều hàng