Mailinglisten-Archive |
>ich habe eine Tabelle mit einer ID, die für mehrere Einträge gleich ist >sowie einem Start- und Endedatum, etwa so: >CREATE TABLE spans ( > id_common int unsigned not null, > start date not null, > end date not null >) >Jetzt suche ich für alle existierenden Werte von id_common die Intervalle, >für die es keinen Eintrag gibt. >An dieser Query verzweifel ich jetzt schon einige Tage, hat jemand eine >Idee? Hi Jens, Zunächst solltest du für deine Tabelle einen Primärschlüssel erzeugen: ALTER TABLE `spans` ADD `id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST; Damit sind deine Datensätze eindeutig gekennzeichnet. Die Intervalle findest du so: Select a.id_common,a.end as start, b.start as end from spans as a LEFT JOIN spans as b on a.id_common = b.id_common where a.end < b.start group by a.end MFG Wolfgang
php::bar PHP Wiki - Listenarchive