Bastler: (MySQL) BETWEEN und nochwas

hallo,

wie baue ich BETWEEN ein?

SELCT * FROM $table WHERE abc='$abc'

kann mir da noch jemand zusätzlich einbauen xyz von $min bis $max

und mein 2. Problem wie kann ich nur 10 Suchtreffer ausgeben?

MfG Bastler

  1. Moin!

    wie baue ich BETWEEN ein?

    SELCT * FROM $table WHERE abc='$abc'

    kann mir da noch jemand zusätzlich einbauen xyz von $min bis $max

    Selberbastenl:

    WHERE bedingung 1 AND bedingung 2 OR bedingung 3 - ist wirklich nicht so schwierig, als dass man es nicht selbst ausprobieren könnte.

    und mein 2. Problem wie kann ich nur 10 Suchtreffer ausgeben?

    LIMIT.

    Lies die MySQL-Doku. http://www.mysql.de/doc/de/

    - 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. LIMIT.

      gut mit LIMIT 10 bekomme ich alle von 0-10 aber wie bekomme ich 10-20 usw?

      MfG Bastler

      1. Hi Bastler

        gut mit LIMIT 10 bekomme ich alle von 0-10 aber wie bekomme ich 10-20 usw?

        Ehm, wie wärs wenn du LIMIT mal nachliest? Es gibt eine
        Syntax für 10-20, und schwierig ist sie auch nicht.

        Gruss Daniela

        1. ach jetzt komme ich dahinter warum das so kompliziert scheint mit LIMIT.

          aber so wirklich verstehen tu ichs nich:

          meine abfrage lautet SELECT * FROM $table $where $obh LIMIT 0,10
                                                        oder    LIMIT 10,10

          in $where stehen alle where bedingungen und in $obh zb order by nr DESC. nun kommt noch LIMIT hinzu bei 0,10 kommt das gewünschte ergebnis aber bei 10,10 verstellt er mir mein order by nr desc irgendwie.

          wie kann ich ORDER BY und LIMIT so verwenden wie ich erst gedacht hab. mir ist schon klar das er nicht sortieren kann und limit verwenden kann aber wie löse ich das problem nun? und wieso gehts nur bei 0,10?

          MfG Bastler

          1. Moin!

            meine abfrage lautet SELECT * FROM $table $where $obh LIMIT 0,10
                                                          oder    LIMIT 10,10

            in $where stehen alle where bedingungen und in $obh zb order by nr DESC. nun kommt noch LIMIT hinzu bei 0,10 kommt das gewünschte ergebnis aber bei 10,10 verstellt er mir mein order by nr desc irgendwie.

            Kann nicht sein. MySQL arbeitet den Query sozusagen der Reihe nach ab (wobei man eine Reihenfolge der Angaben einhalten muß - die Reihenfolge ist also vorgegeben).

            wie kann ich ORDER BY und LIMIT so verwenden wie ich erst gedacht hab. mir ist schon klar das er nicht sortieren kann und limit verwenden kann aber wie löse ich das problem nun? und wieso gehts nur bei 0,10?

            Doch, LIMIT und ORDER BY schließen sich absolut nicht gegenseitig aus. Die Liste wird sortiert, und ein Ausschnitt daraus gemäß LIMIT ausgegeben.

            - 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. Hi,

              SELECT * FROM $table $where $obh LIMIT 0,10

              gibt mir die ersten 10 aus

              SELECT * FROM $table $where $obh LIMIT 10,10
              nicht 10-20 ist doch richtig so oder?

              Doch, LIMIT und ORDER BY schließen sich absolut nicht gegenseitig aus. Die Liste wird sortiert, und ein Ausschnitt daraus gemäß LIMIT ausgegeben.

              wieso wenn ich erst sortiere dauert es doch wieder länger oder?

              MfG Bastler

              1. Hi!

                SELECT * FROM $table $where $obh LIMIT 10,10
                nicht 10-20 ist doch richtig so oder?

                Probiers aus, oder lies nach: http://www.mysql.com/doc/de/SELECT.html

                Doch, LIMIT und ORDER BY schließen sich absolut nicht gegenseitig aus. Die Liste wird sortiert, und ein Ausschnitt daraus gemäß LIMIT ausgegeben.

                wieso wenn ich erst sortiere dauert es doch wieder länger oder?

                Aber wenn Du z.B. die 10 Mitarbeiter mit dem höchten Gehalt abfragen willst, wer garantiert Dir dass Du beim LIMIT zufällig die 10 höchten erwischst? Entweder Du willst sortieren, dann vorher, sonst lass es.
                Ohne ORDER BY ist die Reihenfolge der Datensätze im Prinzip rein zufällig.

                Grüße
                Andreas