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

Beberapa MySQL bergabung ke tabel yang sama

Berdasarkan komentar Anda bahwa page1, page2.. adalah kolom kunci asing, menurut saya sederhana saja.

Sesuatu seperti:

SELECT 
    s.unique_id, s.counter, s.sequence_length, s.yearmonth, 
    s.mod_date_stamp,
    pg1.page_url as page1, pg2.page_url as page2, 
    pg3.page_url as page3, pg4.page_url as page4, 
    pg5.page_url as page5
FROM 
    session s
LEFT JOIN 
    sessionpage pg1 ON pg1.unique_id = s.page1 
LEFT JOIN 
    sessionpage pg2 ON pg2.unique_id = s.page2
LEFT JOIN 
    sessionpage pg3 ON pg3.unique_id = s.page3
LEFT JOIN 
    sessionpage pg4 ON pg4.unique_id = s.page4
LEFT JOIN 
    sessionpage pg5 ON pg5.unique_id = s.page5

Saya pikir ini akan berhasil.

Tetapi ketika tidak ada nilai pada kolom (pada sesi tabel), Anda harus menggunakan null alih-alih 0 (nol).

Tip lain, pada pernyataan SELECT, jika Anda tidak menginginkan nilai NULL, Anda dapat menggunakan:

COALESCE(pg5.page_url, ' ') as page5



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Muat informasi secara dinamis ke modal Twitter Bootstrap

  2. Isi kotak pilih dari database menggunakan jQuery

  3. CakePHP Model Query Mengembalikan Format Data

  4. MySQL mendapatkan nilai acak antara dua nilai

  5. @OneToMany kesalahan di MySQL:Tidak dapat menghapus atau memperbarui baris induk:batasan kunci asing gagal