Przedstawię przykładową bazę
mysql> SELECT * FROM owoc;
+---------+------------+
| owoc_id | owoc_nazwa |
+---------+------------+
| 1 | Banan |
| 2 | Jabłko |
| 3 | Cytryna |
| 4 | Ananas |
| 5 | Gruszka |
+---------+------------+
5 rows IN SET (0.00 sec)
mysql> SELECT * FROM ludzie;
+-----------+-------------+
| ludzie_id | ludzie_imie |
+-----------+-------------+
| 1 | Jan |
| 2 | Jakub |
| 3 | Józef |
| 4 | Jonasz |
| 5 | Jeremiasz |
+-----------+-------------+
5 rows IN SET (0.00 sec)
mysql> SELECT * FROM przynaleznosc;
+------------------+---------------------+--------------------+
| przynaleznosc_id | przynaleznosc_osoba | przynaleznosc_owoc |
+------------------+---------------------+--------------------+
| 1 | 2 | 1 |
| 2 | 4 | 5 |
| 3 | 3 | 2 |
+------------------+---------------------+--------------------+
3 rows IN SET (0.00 sec)
można wrzucić do siebie
--
-- Struktura tabeli dla `ludzie`
--
CREATE TABLE IF NOT EXISTS `ludzie` (
`ludzie_id` int(11) NOT NULL AUTO_INCREMENT,
`ludzie_imie` varchar(64) CHARACTER SET utf8 COLLATE utf8_polish_ci NOT NULL,
PRIMARY KEY (`ludzie_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;
--
-- Zrzut danych tabeli `ludzie`
--
INSERT INTO `ludzie` (`ludzie_id`, `ludzie_imie`) VALUES
(1, 'Jan'),
(2, 'Jakub'),
(3, 'Józef'),
(4, 'Jonasz'),
(5, 'Jeremiasz');
-- --------------------------------------------------------
--
-- Struktura tabeli dla `owoc`
--
CREATE TABLE IF NOT EXISTS `owoc` (
`owoc_id` int(11) NOT NULL AUTO_INCREMENT,
`owoc_nazwa` varchar(64) CHARACTER SET utf8 COLLATE utf8_polish_ci NOT NULL,
PRIMARY KEY (`owoc_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;
--
-- Zrzut danych tabeli `owoc`
--
INSERT INTO `owoc` (`owoc_id`, `owoc_nazwa`) VALUES
(1, 'Banan'),
(2, 'Jabłko'),
(3, 'Cytryna'),
(4, 'Ananas'),
(5, 'Gruszka');
-- --------------------------------------------------------
--
-- Struktura tabeli dla `przynaleznosc`
--
CREATE TABLE IF NOT EXISTS `przynaleznosc` (
`przynaleznosc_id` int(11) NOT NULL AUTO_INCREMENT,
`przynaleznosc_osoba` int(11) NOT NULL,
`przynaleznosc_owoc` int(11) NOT NULL,
PRIMARY KEY (`przynaleznosc_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;
--
-- Zrzut danych tabeli `przynaleznosc`
--
INSERT INTO `przynaleznosc` (`przynaleznosc_id`, `przynaleznosc_osoba`, `przynaleznosc_owoc`) VALUES
(1, 2, 1),
(2, 4, 5),
(3, 3, 2);
Chodzi mi o to, by zapytanie wyświetliło mi imiona wszystkich osób i jeżeli są w posiadaniu jakichś owoców, to żeby je także wyświetlić.
Przykład:
+-----------+-------------+--------------------+------------+
| ludzie_id | ludzie_imie | przynaleznosc_owoc | owoc_nazwa |
+-----------+-------------+--------------------+------------+
| 1 | Jan | NULL | NULL |
+-----------+-------------+--------------------+------------+
| 2 | Jakub | 1 | Banan |
+-----------+-------------+--------------------+------------+
| 3 | Józef | 2 | Jabłko |
+-----------+-------------+--------------------+------------+
| 4 | Jonasz | 5 | Gruszka |
+-----------+-------------+--------------------+------------+
| 5 | Jeremiasz | NULL | NULL |
+-----------+-------------+--------------------+------------+
Za pomoc będę niezmiernie wdzięczny