MySQL LEFT JOIN dupliziert die Ergebnisse

Ich habe ein Problem mit der Implementierung eines Moduls, in dem eines vorhanden istproject kann zu mehreren gehörencategories. Beispiel: Projekt "PHP Programmer" gehört zu den Kategorien: Programmierung, PHP.

Angenommen, die folgende Abfrage (Wählen Sie Projekte aus, die zu den Kategorien 1,3,11 gehören):

SELECT projects.* FROM projects 
    LEFT JOIN pojects_category on projects.id = pojects_category.project_id 
    WHERE pojects_category.category_id IN (1,3,11) and projects.id='94'`

Ich bekomme einedasselbe Projekt kehrte zweimal zurück, weil dort sind2 Streichhölzer in derproject_category Tisch für dieproject_id = 94

Tabelleprojects_category Schema:

CREATE TABLE IF NOT EXISTS `pojects_category` (
  `project_id` int(10) NOT NULL,
  `category_id` int(10) NOT NULL,
  KEY `category_id` (`category_id`),
  KEY `project_id` (`project_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;


INSERT INTO `pojects_category` (`project_id`, `category_id`) VALUES
(94, 3),
(94, 1);

Vermisse ich etwas?

Lösung: benutzenGROUP BY oderDISTINCT

Antworten auf die Frage(2)

Ihre Antwort auf die Frage