Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Cara memilih kolom untuk tabel INNER JOIN tergantung pada nilai array yang digabungkan

SELECT 
   CONCAT( 
    "{"
   ,     '"id"' , ":" , '"' , friends.id , '"' , ","
   ,     '"name"' , ":" , '"' , friends.name , '"' , ","
    , 
   CASE 
   WHEN relations.status = 'Current' 
     THEN CONCAT('"CurrentTeam":["',    teams.name ,'"]')
   ELSE CONCAT('"pastTeam": '   ,   '[' ,   GROUP_CONCAT( '"',teams.name, '"'),']'  )
     END   
   , "}"
   )
  AS json
FROM 
 friends 
INNER JOIN 
 relations 
ON 
 friends.id = relations.friends_id
INNER JOIN
 teams 
ON
relations.teams_id = teams.id
 group by friends.id,relations.status

http://sqlfiddle.com/#!9/694bc69/23



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara Mendapatkan Data Setiap Jam di MySQL

  2. php - Mengaktifkan pengguna ke posting favorit

  3. Tampilkan catatan dari sekarang () hingga 7 hari berikutnya di mysql

  4. Bagaimana cara BERGABUNG dengan tabel kategori untuk orang tua dalam kueri SQL?

  5. Mengambil daftar tertaut di database MySQL