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

435

    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. Nainen, olo on nyt paljon parempi

      Tästä se lähtee. Kaikenlaista vielä tulossa, jotain alkaa näkyä jo tunnelin päässä ja valo alkaa häämöttää. Pieni lepohe
      Ikävä
      45
      5627
    2. Hienoa SDP 24,8%

      Kyllä eilisessä hallituksen kyselytunnilla näkyi miten tyhjää puhetta pääministerin sijaisella Purralla oli. Hän ei vast
      Maailman menoa
      377
      2745
    3. Toki välitän sinusta

      Nainen J ja paljon. Mutta mitään turhia korulaiseita tai muuta tyhjiä eleitä en aio toteuttaa. Se mitä tapahtuu niin tu
      Ikävä
      10
      2366
    4. Laita mies mun nimikirjaimet tänne

      Mulla on ikävä sua etkä ole siellä missä voisin edes nähdä sut hetkellisesti 😭
      Ikävä
      83
      1769
    5. Mitä kannuksessa tapahtuu? Poliiseja raskaitten varusteiden kanssa liikkellä!

      Suuri määrä poliiseja takalon koulun lähettyvillä?
      Kannus
      15
      1276
    6. voi luoja että

      Mulla on ikävä sua
      Ikävä
      41
      1121
    7. Mitäs olet suunnitellut viikonlopuksi

      Mitä aiot tehdä viikonloppuna
      Sinkut
      153
      1111
    8. Mitä haluaisit kysyä

      Kaivatultasi jos se olisi mahdollista?
      Ikävä
      69
      1009
    9. Pystytkö olemaan rehellinen ja

      kertomaan että olet täällä pilaillut ja arvostellut? Ehkä jopa esiintynyt toisena henkilönä? Mitä sun lapses siihen sano
      Ikävä
      151
      922
    10. Sinusta tuli mies

      Mielestäni todella läheinen ja lähennyimme paljon tuon parin kuukauden aikana kun näimme usein. Nyt kun taas ei sattunei
      Ikävä
      56
      921
    Aihe