Wie Wo Was vertauschen ?
Abfrage DB - Zeiten vergleichen - Logikproblem
Collapse
X
-
kürzen wir's einfach abtut das?Code:SELECT a.id, CONCAT(a.date, ' ', a.time) start, a.length, SUM( (CONCAT(a.date, ' ', a.time) BETWEEN CONCAT(b.date, ' ', b.time) AND CONCAT(b.date, ' ', b.time) + INTERVAL b.length MINUTE) + (CONCAT(b.date, ' ', b.time) BETWEEN CONCAT(a.date, ' ', a.time) AND CONCAT(a.date, ' ', a.time) + INTERVAL a.length MINUTE) ) konflikt FROM vortrag a, vortrag b WHERE a.id != b.id GROUP BY a.id, start, a.length ORDER BY start
hast du die spalten date und time jetzt endlich mal zusammengefasst um uns allen tipparbeit zu sparen?
Ich denke, also bin ich. - Einige sind trotzdem...
Comment
-
Ja, es tut, was es soll
Ist aber ganz schön kompliziert geworden, oder ?
Ich warte mal auf die Produktiv DB - da ist das sicherlich zusammengefaßt.hast du die spalten date und time jetzt endlich mal zusammengefasst um uns allen tipparbeit zu sparen?
Habe ich mich eigentlich schon bedankt, wenn nicht, dann DANKE du Häuptling
Der IndianerManus manum lavat.
Comment
-
feinOriginal geschrieben von Churchill27
Ja, es tut, was es soll
wegen deinen tollen sonderwünschen und der aufteilung des seminarstarts auf zwei spaltenIst aber ganz schön kompliziert geworden, oder ?mach das lieber jetzt gleich, weißt doch: wem du's heute kannst... *scnr*Ich warte mal auf die Produktiv DB - da ist das sicherlich zusammengefaßt.
ernsthaft: korrigier das lieber jetzt schon, sind ja nur ALTER TABLE (3x) und UPDATE (1x)Last edited by mrhappiness; 03-02-2004, 22:30.Ich denke, also bin ich. - Einige sind trotzdem...
Comment
-
So, habe ich jetzt gemacht ...
SQL sieht dann so aus:
SELECT a.id, a.datum, a.length, SUM( (
a.datum
BETWEEN b.datum AND b.datum + INTERVAL b.length MINUTE
) + b.datum
BETWEEN a.datum AND a.datum + INTERVAL a.length MINUTE ) konflikt
FROM vortrag a, vortrag b
WHERE a.id != b.id
GROUP BY a.id, a.length
ORDER BY a.datum LIMIT 0 , 30
Ergebnis so:
1 2004-04-25 08:00:00 90 0
2 2004-04-25 09:40:00 90 0
3 2004-04-25 12:00:00 90 1
5 2004-04-25 12:40:00 90 1
4 2004-04-25 14:00:00 90 0
7 2004-04-25 18:00:00 120 0
8 2004-04-26 09:00:00 90 1
9 2004-04-26 09:30:00 90 0
Also wie unsere vorherige Variante ... na, was habe ich jetzt schon wieder falsch gemacht ?Manus manum lavat.
Comment
-
Hallöchen,
ich habe da noch mal eine Frage.
Ich habe meine Tabelle jetzt noch um eine weitere Spalte erweitert, die abstract heißt. Dort stehen die Inhalte zu den einzelnen IDs drin.
Mein Ergebnis kann man unter
http://www.kirchel.de/congress/itinerary.php sehen.
Nun möchte ich, wenn man auf eine headline klickt, darunter der Erklärungstext erscheint (Spalte abstract)
Hat jemand eine Idee ?
Mein Problem ist, dass ich ja irgendwie die ID übergeben muss und in die DB-Abfrage einbauen muss
Gruß OlliManus manum lavat.
Comment
-
Jo,
habe wohl die Frage falsch gestellt ... ist auch eher ein Logikproblem:
Mein Code sieht so aus:
Wenn ich jetzt auf den Link klicke, wir auch die ID übergeben. So weit so gut. Nun habe ich aber das Problem, die Ausgabe so zu generieren, dass der Text genau unter der jeweiligen Headline und den Autoren erscheint.PHP Code:while($row = mysql_fetch_array($sql_sel_vortrag)){
echo '<tr bgcolor="'.$con_tab_bg_color.'">'."\n";
echo '<td class="fett_w_10" width="'.$con_col_width_1.'" align="center" valign="top">'.$row[id].'</td>'."\n";
echo '<td class="fett_w_10" width="'.$con_col_width_2.'" align="center" valign="top">'.$row[datum].'<br>'.$row[length].' minutes</td>'."\n";
echo '<td class="fett_w_10" width="'.$con_col_width_3.'" align="left" valign="top">'.$row[ort].'</td>'."\n";
echo '<td class="fett_w_10" width="'.$con_col_width_4.'" align="left" valign="top"><a href="itinerary.php?id='.$row[id].'">'.$row[theme].'</a><br><font class="ita_10">'.$row[consultant].'</font></td>'."\n";
echo '<td class="fett_r_12" width="'.$con_col_width_5.'" align="center">'.overlapping($row[konflikt]).'</td>'."\n";
echo '</tr>'."\n";
}
Eine Idee ?Manus manum lavat.
Comment
-
Hi,
genau das, ist mein Problem:
Den Select hatte ich schon erweitert und ich bekomme auch die Daten, meine Frage ist nur ...gebe ihn nur da aus, wo du ihn brauchst
Wo und wie schiebe ich das in die while-Schleife ein ?
Wenn ich einfach nur eine Abfrage auf die ID mache, gibt er den Text ja in jeder Zeile aus. Er soll sie aber nur in der Zeile mit der richtigen ID ausgeben.
Manus manum lavat.
Comment
Comment