Problem mit query()



  • Oh das hab ich noch gar nicht gesehen danke 😃
    Das num ist nur der Spaltenname.
    Ich überprüfe ob die Zelle 0 die 1 enthält.



  • gamebuntu schrieb:

    Das num ist nur der Spaltenname.

    Wenn alle Tabellen ne Spalte namens "num" haben, und du immer nur die 1. Zeile brauchst, dann OK.

    Ich überprüfe ob die Zelle 0 die 1 enthält.

    Dass deine Abfrage nur das 1. Zeichen des Feld-Wertes vergleicht ist dir klar, oder? Falls es das ist was du willst, OK.



  • Jop jede tabelle hat die spalte num.
    Aber ich habs jetzt geschickter gelöst :D.
    Habs jetzt so gemacht:

    select * from tabellenname where num = '1';
    


  • Ja, das ist vermutlich besser.
    Vor allem weil die "erste Zeile" ohne explizites "ORDER BY" einfach irgendeine ist.
    Wenn du nur wissen willst OB es eine Zeile gibt wo "num = '1'" gilt, könntest du es auch so machen

    -- Anzahl der Zeilen wo num = '1'
    SELECT COUNT(*) FROM tabname WHERE num = '1'
    
    -- Nur nachgucken ob es wenigstens eine Zeile mit num = '1' gibt
    SELECT 1 WHERE EXISTS (SELECT * FROM tabname WHERE num = '1')
    

    Mit deiner Version verglichen ist ersteres einfacher auszuwerten, und zweiteres kann bei grossen Tabellen deutlich schneller sein.



  • Ich möchte nur wissen ob die Tablle in Spalte num die 1 hat danach wird der Name der Tabelle in eine liste geschrieben.



  • Versteh ich nicht... "ob die Tablle in Spalte num die 1 hat" 😕
    Hast du pro Tabelle nur einen Datensatz oder wie?



  • Nene ich hab mehrere aber jede tabelle hat die Spalte num.



  • Ja, Tabellen hast du mehrere, das ist mir schon klar.

    Ich spreche von den ZEILEN in den Tabellen.
    Und jede ZEILE hat nen eigenen Wert für die Spalte "num".
    Die Frage ob in der Tabelle "X" in der Spalte "num" eine "1" drinnen steht, ist also nicht vollständig.

    Weil es in der Tabelle "X" viele viele Zeilen geben kann. Einigen könnten eine "1" in "num" stehen haben, andere nicht.



  • Doch doch die haben alle eine 1 oder eine 0 drin stehen.
    Das ist alles so programmiert das das so dort drin steht.



  • Kannst du wirklich garantieren, daß alle Zeilen der Tabelle den selben Wert in der Spalte "num" haben? Wenn ja, was für einen Sinn hat diese Spalte überhaupt?


Anmelden zum Antworten