ronny: datenbankinhalte zählen

hallo, ich habe in meiner sql db eine tabelle FOTO
dort gibt es eine spalte NEU

wie gehe ich an die sache ran um festzustellen
1. ob es in der spalte den wert JA gibt und
2. wieviele felder davon betroffen sind

bin für jeden lösungansatz dankbar ;)

ronny

  1. Moin!

    hallo, ich habe in meiner sql db eine tabelle FOTO
    dort gibt es eine spalte NEU

    Örks. Neu: ja/nein ist ein ziemlich schlechtes Kriterium. Weil man da immer updaten muß, denn ein Foto, was ein Jahr als geworden ist, ist mit Sicherheit nicht mehr neu.

    Mach ein Erstelldatum in die Tabelle und regle die "Neuheit" durch einen Vergleich mit dem aktuellen Datum.

    wie gehe ich an die sache ran um festzustellen

    1. ob es in der spalte den wert JA gibt und
    2. wieviele felder davon betroffen sind

    Wenn du alles so lassen willst:

    SELECT COUNT(*) as zahl FROM tabelle WHERE neu = ja;

    -> Gibt dir in einem Datensatz die Zahl der neuen Bilder aus.

    SELECT COUNT(*) as zahl FROM tabelle WHERE datum BETWEEN now() AND now()- INTERVAL 30 DAYS;

    Gibt dir (bei Datumsverwendung) genau dieselbe Information (neue Dateien sind welche, die jünger als 30 Tage sind.

    PS: Keine Garantie auf die zweite SQL-Zeile, kann sein, dass du statt einfach Minus zu rechnen die Funktion datesub() benutzen mußt.

    - Sven Rautenberg

    --
    "Beim Stuff für's Web gibts kein Material, was sonst das Zeugs ist, aus dem die Sachen sind."
    (fastix®, 13. Oktober 2003, 02:26 Uhr -> </archiv/2003/10/60137/#m338340>)
    1. Örks. Neu: ja/nein ist ein ziemlich schlechtes Kriterium. Weil man da immer updaten muß, denn ein Foto, was ein Jahr als geworden ist, ist mit Sicherheit nicht mehr neu.

      Mach ein Erstelldatum in die Tabelle und regle die "Neuheit" durch einen Vergleich mit dem aktuellen Datum.

      dank für die schnelle anwort. der sinn ist folgender. es trägt jemand ein foto ein. nun soll für einen anderen benutzer ersichtlich werden, ob es neue fotos gibt oder nicht, also um genau zu sein, fotos die er noch nicht gesehen hat. deswegen dachte ich mir mal ganz fix ;) ich trage eben dieses JA für neu ein. wenn der andere benutzer das bild gesehen hat, wird per update NEIN eingetragen. geht das nicht?

      danke

      1. Moin!

        dank für die schnelle anwort. der sinn ist folgender. es trägt jemand ein foto ein. nun soll für einen anderen benutzer ersichtlich werden, ob es neue fotos gibt oder nicht, also um genau zu sein, fotos die er noch nicht gesehen hat. deswegen dachte ich mir mal ganz fix ;) ich trage eben dieses JA für neu ein. wenn der andere benutzer das bild gesehen hat, wird per update NEIN eingetragen. geht das nicht?

        Es ist unpraktisch, wenn du mehr als einen User hast. Denn natürlich gilt das Flag für das Foto, und nicht für den User.

        Du hast mehr Erfolg, wenn du mit Daten arbeitest:

        1. Wann ist das Foto eingestellt worden.
        2. Wann hat der Benutzer zuletzt nach neuen Fotos geschaut.

        Alle Fotos, die datumsmäßig hinter dem letzten Besuch liegen, sind _für diesen Benutzer_ neu.

        Du aktualisierst das "zuletzt geschaut"-Datum des Benutzers, nicht aber die Informationen der Fotos.

        - Sven Rautenberg

        --
        "Beim Stuff für's Web gibts kein Material, was sonst das Zeugs ist, aus dem die Sachen sind."
        (fastix®, 13. Oktober 2003, 02:26 Uhr -> </archiv/2003/10/60137/#m338340>)
        1. Du hast mehr Erfolg, wenn du mit Daten arbeitest:

          1. Wann ist das Foto eingestellt worden.
          2. Wann hat der Benutzer zuletzt nach neuen Fotos geschaut.

          Alle Fotos, die datumsmäßig hinter dem letzten Besuch liegen, sind _für diesen Benutzer_ neu.

          Du aktualisierst das "zuletzt geschaut"-Datum des Benutzers, nicht aber die Informationen der Fotos.

          hihi, danke, manchmal braucht man nur nen kleinen klatsch auf den hinterkopf ;)
          natürlich macht es so mehr sinn ;)