Nanya lagi ahh =) Ini pakai MySQL 4.0.23-nt.
Misalnya ada 3 tabel. Tabel SISWA berisi data siswa Tabel SKILL berisi kemampuan siswa Tabel KATEGORI berisi kategori dari skill-skill itu Tabel SISWA_SKILL berisi skill-nya siswa (karena tiap siswa punya skill lebih dari 1, makanya dibuat di tabel trpisah) Fieldnya begini : SISWA(id,nama) PRIMARY id SISWA_SKILL(siswa,skill,nilai) PRIMARY id_siswa,id_skill. Nilai berisi 1-5. SKILL(id,kategori,nama) PRIMARY id KATEGORI(id,nama) PRIMARY id Kalau saya hanya ingin menampilkan data yang ada untuk salah satu siswa dengan data yang dibutuhkan adalah nama siswa, kategori, skill, dan nilainya bisa dengan begini: SELECT siswa.nama nama, kategori.nama kategori, skill.nama skill, siswa_skill.nilai nilai FROM kategori, siswa, siswa_skill, skill WHERE siswa.id = siswa_skill.siswa AND siswa_skill.skill = skill.id AND skill.kategori = kategori.id AND siswa.id=1 atau begini: SELECT siswa.nama nama, kategori.nama kategori, skill.nama skill, siswa_skill.nilai nilai FROM kategori JOIN siswa JOIN siswa_skill JOIN skill ON siswa.id = siswa_skill.siswa AND siswa_skill.skill = skill.id AND skill.kategori = kategori.id AND siswa.id=1 Masalahnya, kalau dengan cara seperti itu, data-data yang NULL tidak iklut tampil. Maunya saya, semua skill, kategori, beserta nilainya tampil, walaupun nilainya NULL. Gimana caranya ya? Pakai RIGHT JOIN & LEFT JOIN nggak bisa lebih dari dua tabel Walaupun di masukkan dalam tanda kurung, tetep aja nggak bisa, cuma JOIN yang bisa dimasukkan dalam tanda kurung. Sebelumnya, terima kasih banyak atas jawabannya. Dump MySQL-nya begini: # phpMyAdmin MySQL-Dump # version 2.5.0-rc2 # http://www.phpmyadmin.net/ (download page) # # Host: localhost # Waktu pembuatan: 27. Juli 2005 jam 18:11 # Versi Server: 4.0.23 # Versi PHP: 4.3.1 # Database : `murid` # -------------------------------------------------------- # # Struktur dari tabel `kategori` # # Pembuatan: 27. Juli 2005 jam 17:58 # Update terakhir: 27. Juli 2005 jam 18:08 # DROP TABLE IF EXISTS `kategori`; CREATE TABLE `kategori` ( `id` int(10) unsigned NOT NULL auto_increment, `nama` varchar(20) NOT NULL default '', PRIMARY KEY (`id`) ) TYPE=MyISAM AUTO_INCREMENT=4 ; # # Dumping data untuk tabel `kategori` # INSERT INTO `kategori` (`id`, `nama`) VALUES (1, 'IPA'); INSERT INTO `kategori` (`id`, `nama`) VALUES (2, 'IPS'); INSERT INTO `kategori` (`id`, `nama`) VALUES (3, 'Bahasa'); # -------------------------------------------------------- # # Struktur dari tabel `siswa` # # Pembuatan: 27. Juli 2005 jam 17:49 # Update terakhir: 27. Juli 2005 jam 18:08 # DROP TABLE IF EXISTS `siswa`; CREATE TABLE `siswa` ( `id` int(10) unsigned NOT NULL auto_increment, `nama` varchar(20) NOT NULL default '', PRIMARY KEY (`id`) ) TYPE=MyISAM AUTO_INCREMENT=3 ; # # Dumping data untuk tabel `siswa` # INSERT INTO `siswa` (`id`, `nama`) VALUES (1, 'Andi'); INSERT INTO `siswa` (`id`, `nama`) VALUES (2, 'Doni'); # -------------------------------------------------------- # # Struktur dari tabel `siswa_skill` # # Pembuatan: 27. Juli 2005 jam 17:50 # Update terakhir: 27. Juli 2005 jam 18:08 # DROP TABLE IF EXISTS `siswa_skill`; CREATE TABLE `siswa_skill` ( `siswa` int(10) unsigned NOT NULL default '0', `skill` int(10) unsigned NOT NULL default '0', `nilai` int(10) unsigned NOT NULL default '0', PRIMARY KEY (`siswa`,`skill`) ) TYPE=MyISAM; # # Dumping data untuk tabel `siswa_skill` # INSERT INTO `siswa_skill` (`siswa`, `skill`, `nilai`) VALUES (1, 1, 3); INSERT INTO `siswa_skill` (`siswa`, `skill`, `nilai`) VALUES (1, 2, 4); INSERT INTO `siswa_skill` (`siswa`, `skill`, `nilai`) VALUES (2, 1, 1); INSERT INTO `siswa_skill` (`siswa`, `skill`, `nilai`) VALUES (2, 6, 5); # -------------------------------------------------------- # # Struktur dari tabel `skill` # # Pembuatan: 27. Juli 2005 jam 17:56 # Update terakhir: 27. Juli 2005 jam 18:08 # DROP TABLE IF EXISTS `skill`; CREATE TABLE `skill` ( `id` int(10) unsigned NOT NULL auto_increment, `kategori` int(10) unsigned NOT NULL default '0', `nama` varchar(20) NOT NULL default '', PRIMARY KEY (`id`) ) TYPE=MyISAM AUTO_INCREMENT=7 ; # # Dumping data untuk tabel `skill` # INSERT INTO `skill` (`id`, `kategori`, `nama`) VALUES (1, 1, 'Matematika'); INSERT INTO `skill` (`id`, `kategori`, `nama`) VALUES (2, 1, 'Fisika'); INSERT INTO `skill` (`id`, `kategori`, `nama`) VALUES (3, 2, 'Sejarah'); INSERT INTO `skill` (`id`, `kategori`, `nama`) VALUES (4, 2, 'Ekonomi'); INSERT INTO `skill` (`id`, `kategori`, `nama`) VALUES (5, 3, 'Bahasa Indonesia'); INSERT INTO `skill` (`id`, `kategori`, `nama`) VALUES (6, 3, 'Bahasa Inggris'); LuckyGuy354 IT Beginner ---------------------------------------------------------- Komunitas MasterWeb Indonesia http://www.master.web.id ---------------------------------------------------------- MWN, Masternya WEBHOSTING di Indonesia, Indo/USA Servers, Customer Support 24 jam http://www.masterwebnet.com ---------------------------------------------------------- WebDevelopment,Designing/Programming http://www.dlanet.com ---------------------------------------------------------- Yahoo! Groups Links <*> To visit your group on the web, go to: http://groups.yahoo.com/group/milis-masterweb/ <*> To unsubscribe from this group, send an email to: [EMAIL PROTECTED] <*> Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
