fetch ja useiden muuttujien tulostaminen sql-kyselyyn

Tomppa234

Miten saan käytettyä useita haettuja muuttujiksi haettuja table sql-kyselyissä, kun väliin tarvittaisiin AND:ia?

Esim: SELECT henkilö FROM perussivut WHERE henkilö != '$henkp'..... Ei tietenkään toimi, koska $henkp:ssä on useita henkilöitä. Miten saan tehtyä vastaavan kyselyn fetchatuilla tablen arvoilla?

Hakukoodini on tällainen:

      if(!$kyselyala = mysql_query("SELECT * FROM henkilöt WHERE layer = 2 AND tyyppi = 'toimistohenkilö'"))
      {
         print "Haku epäonnistui. Virhe:" . mysql_error();
      }else{
            while ($row = mysql_fetch_array($kyselyala)) {
            
               $henkp = $row['henk'];
   
            }
      }

8

489

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • php-miäs

      Eli siis.. yrität ensiksi hakea yhdellä kyselyllä listaa henkilöistä ja sitten tehdä toisen kyselyn, johon nämä henkilöt ei tule mukaan?

      Todennäköisesti järkevintähän olisi tehdä tuo yhdellä kyselyllä. Tuon kyselyn tekeminen vaatisikin sitten hieman ajattelua ja todennäköisesti yritysta ja erehdystä sitäkin enemmän. Todennäköisesti onnistuu LEFT tai RIGHT JOIN:lla.


      Pikaratkaisuna toimisi kuitenkin varmaan joku seuraavan tapainen:

      if(!$kyselyala = mysql_query("SELECT * FROM henkilöt WHERE layer = 2 AND tyyppi = 'toimistohenkilö'"))
      {
      print "Haku epäonnistui. Virhe:" . mysql_error();
      }else{
      while ($row = mysql_fetch_array($kyselyala)) {

      $henkp[] = $row['ID'];

      }

      $query = "SELECT henkilö FROM perussivut WHERE henkilö NOT IN (";

      foreach ($henkp as $arvo)
      {

      if ($lisaaPilkku) $query .= ", ";
      $query .= "'" . $arvo . "'";
      $lisaaPilkku = true;

      }

      $query .= ") ORDER BY sarake";

      echo $query;

      }

      Jos kaikki meni oikein, tuosta tulee vastauksena jotain tyyliin: SELECT henkilö FROM perussivut WHERE henkilö NOT IN ('matti', 'seppo', 'timo') ORDER BY sarake

      • Tomppa5435

        Kiitos. Juuri tätä vastausta etsin.


      • Tomppa5435
        Tomppa5435 kirjoitti:

        Kiitos. Juuri tätä vastausta etsin.

        Minulla on tietoa useammissa tableissa. Onko kysleyä mahdollista muuttaa niin, että siihen saa haettua tietoa useammasta tablesta?

        Tällä hetkellä saan tällaisen virheilmoituksen:

        Column 'sivu' in where clause is ambiguous


    • fgsdfgdsfg

      select henkilö from perussivut where henkilö not in (select henk from henkilöt where layer = 2 and tyyppi = 'toimistohenkilö')

      • hmmm?

        Toimivatko sub-queryt mysql:ssä?


      • gffgf
        hmmm? kirjoitti:

        Toimivatko sub-queryt mysql:ssä?

        jep


      • 122121
        gffgf kirjoitti:

        jep

        Eipä toimi ainakaan omassa mysql-versiossani.


      • 90++0+0
        122121 kirjoitti:

        Eipä toimi ainakaan omassa mysql-versiossani.

        Kannattaisiko siis ehkä päivittää


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Tykkäsin rakas

      Tuottaa sulle nautintoa❤️🔥olet paras ja nautin itsekkin suunnattomasti
      Suhteet
      39
      2497
    2. Maatalous- ja yritystuet pois, työeläkevaroilla valtion velka pois

      Suomi saadaan eheytettyä kädenkäänteessä, kun uskalletaan tehdä rohkeita ratkaisuja. Maatalous- ja yritystuet ovat hait
      Maailman menoa
      3
      1518
    3. Mies mä oon ihan helppo

      Miehelle johon oon ihastunut. Olen harvoin ihastunut, mutta suhun olen. Ei tarvitse kuin pyytää, niin...
      Ikävä
      38
      1373
    4. Hyvää iltaa!

      Mikä on päivän viisaus?
      Ikävä
      84
      1323
    5. Olet onnellinen sinkku

      Näin se on nähtävä.
      Ikävä
      63
      1211
    6. Mies olen aika erakko nykyään

      Vanhentunutkin olen muutamana viime vuonna parikyt vuotta. Kun en ennenkään kelvannut, niin tuskin nytkään kelpaan. Lisä
      Tunteet
      40
      959
    7. Lavroville taitaa olla jo ikkuna raollaan?

      Lavrovin syytä välttää korkeita paikkoja ja ikkunoiden läheisyyttä.Ettei vain keikahda ikkunasta pihalle.
      Maailman menoa
      124
      843
    8. Haittaako jos

      kaivattusi käy tosi usein pissalla ja/tai kakalla?
      Ikävä
      31
      771
    9. Ylen johdon hulppeat bonukset alkavat taas

      Suora kopio Iltalehdestä: "Asiasta kertoo Iltalehdelle Ylen hallituksen puheenjohtaja Matti Apunen. Mitä tulospalkkioi
      Yle
      25
      623
    10. Skenaario

      Elämä ja kuolema ovat merkillisin nyytti olevaisuutta. Mutta kun kumpaakaan ei ole, syntyy lapsuksia, joita korjaamaan
      Sinkut
      58
      596
    Aihe