tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
5
ZUGRIFFE
753
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    maga147 maga147 ist offline Mitglied Brokat
    Registriert seit
    Mar 2005
    Beiträge
    280
    Hallo,

    ich hab einen kleinen Kalender umgeschrieben und gebastelt, der mir jetzt ein paar schwierigkeiten bereitet. Und zwar werden per SQL Abfrage Datenbankeinträge ausgelesen und überprüft, ob das Datum mit dem im Kalender übereinstimmt, und wenn ja, wird der Tag "anklickbar" gemacht.

    Mein Problem ist gerade, wenn mehrere Einträge am gleichen Tag in der DB stehen, wird die überprüfung abgebrochen und es wird kein Tag mehr anklickbar gemacht.

    Ich bräuchte also vielleicht eine SQL Abfrage, die mir nur die ersten Einträge ausließt und bei einem evtl. 2. Eintrag am gleichen Tag weiterspringt.... (SELECT jeweils den ersten FROM blablabla ORDER BY date asc)

    Kann man sowas realisieren und wenn ja, wie? Ich bin gerade nämlich voll überfragt
     

  2. #2
    birnkammer birnkammer ist offline Mitglied Platin
    Registriert seit
    Dec 2004
    Beiträge
    666
    Klar, versuchs einfach mit LIMIT 1, also:

    Code SQL:
    1
    
    SELECT jeweils den ersten FROM blablabla ORDER BY DATE ASC LIMIT 1;
     
    Nichts kann existieren ohne Ordnung - Nichts kann entstehen ohne Chaos
    (Albert Einstein)

  3. #3
    maga147 maga147 ist offline Mitglied Brokat
    Registriert seit
    Mar 2005
    Beiträge
    280
    nee das klappt so auch nicht, weil er da ja nur den 1. eintrag nimmt, und nicht, wie ich will von jedem Tag den ersten...
     

  4. #4
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Ich würde eher mit DISTINCT arbeiten:
    Code :
    1
    2
    3
    4
    5
    6
    
    SELECT
            DISTINCT(`date`)
      FROM
            …
      ORDER BY
            `date` ASC
     
    Markus Wulftange

  5. #5
    Andrej Dyck Andrej Dyck ist offline Mitglied Bronze
    Registriert seit
    Jul 2006
    Beiträge
    35
    Abend!

    ich hoffe du hast 2 Tabellen also, sowas ähnliches:
    PHP-Code:
    CREATE TABLE Kalender
    (
      
    KID ...
      
    Datum ...
    )

    CREATE TABLE Eintraege
    (
      
    EID ...
      
    Text ...
      
    KID ... 

    Dann würde ich Folgendes vorschlagen:
    PHP-Code:
    $SQLStr "SELECT *, (SELECT Count(*) FROM Einträge WHERE KID = Kalender.KID) AS AnzEintraege FROM Kalender"
    so und wenn ich dann die Tupel durchiteriere z.b. mit
    PHP-Code:
    while($data mysql_fetch_assoc($result) {...} 
    würde ich prüfen ob $data['AnzEintraege'] > 0 ist. Wenn ja, dann verlinken.

    Gruß Andrej
     

  6. #6
    maga147 maga147 ist offline Mitglied Brokat
    Registriert seit
    Mar 2005
    Beiträge
    280
    Zitat Zitat von Gumbo
    Ich würde eher mit DISTINCT arbeiten:
    Code :
    1
    2
    3
    4
    5
    6
    
    SELECT
            DISTINCT(`date`)
      FROM
            …
      ORDER BY
            `date` ASC

    =) Danke es funktioniert!!

    @Andrej Dyck: Danke für deine Mühen, aber ich hab 1. keine 2 Tabellen, und das von Gumbo klappt auch Trotzdem danke Vielleicht hilfts später mal wem anderes
     

Ähnliche Themen

  1. Eintrag und Abfrage
    Von kosovafan im Forum CGI, Perl, Python, Ruby, Power Shell
    Antworten: 1
    Letzter Beitrag: 30.10.07, 09:41
  2. Datum in Array danach Auflistung nach Eintrag
    Von SeargentWinters im Forum PHP
    Antworten: 10
    Letzter Beitrag: 27.09.04, 20:38
  3. Eintrag nach Datum auswählen (EM 2004-Script)
    Von HansMaier im Forum Relationale Datenbanksysteme
    Antworten: 0
    Letzter Beitrag: 01.06.04, 17:44
  4. datum abgelaufen - eintrag löschen
    Von splat im Forum Relationale Datenbanksysteme
    Antworten: 4
    Letzter Beitrag: 30.11.03, 14:10
  5. datum in tage umrechnen bzw. abfrage problem mit datum
    Von Brauni im Forum Relationale Datenbanksysteme
    Antworten: 3
    Letzter Beitrag: 25.08.03, 20:57