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

MySQL tham gia với các câu lệnh trường hợp

Đừng đặt trường hợp cho toàn bộ phép nối bên trong, hãy đặt trường hợp chỉ với mệnh đề 'on' trong phép nối. Điều này sẽ hoạt động (trừ khi tôi mắc lỗi chính tả):

  SELECT 
    conversation.c_id,
    conversation.user_one,
    conversation.user_two,
    users.name,
    users.lastName
  FROM `conversation` 
  INNER JOIN `users`
  on
  users.id =
  CASE
    WHEN conversation.user_one = 1
    THEN conversation.two 
    WHEN conversation.user_two = 1
    THEN conversation.user_one   
 END
 WHERE `user_one` = 1 OR `user_two` = 1

Bạn cũng có thể đạt được ảnh hưởng tương tự bằng cách kết hợp trái trên từng điều kiện này và sau đó sử dụng câu lệnh trường hợp trong câu lệnh lựa chọn của bạn để xác định một trong hai bảng để hiển thị bản ghi.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Xây dựng truy vấn mysql để đếm dữ liệu cụ thể trong cùng một bảng / hàng

  2. Người tiêu dùng sản xuất MySQL với nhiều chủ đề được chọn

  3. Thứ tự MySQL theo mức độ liên quan

  4. Java / Mysql Bạn sẽ đưa toàn bộ tệp SQL vào máy chủ mysql như thế nào?

  5. Bắt đầu và dừng phiên bản mysql cục bộ từ bên trong ứng dụng