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'];
}
}
fetch ja useiden muuttujien tulostaminen sql-kyselyyn
8
478
Vastaukset
- 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
Kysymys muille miehille
Onko teille varattu nainen ongelma? Mikään muu naisessa ei töki kun se että hän on varattu. Kamppailen houkutuksen kanss1307172Kaipaisin nyt kosketusta
jota ei koskaan ole ollut. Saisinpa tuntea kätesi niskallani ja silittelemässä päätäni. Sulaisin varmasti siihen.142539Imaami kysyy, miksi pojat uivat ilman valvontaa
Kalajoen särkät ovat usean kilometrin pituiset. Siellä on kylttejä, joissa varoitetaan rannan vaaroista. Siellä ei ole2641220- 1001019
Mansikkatiloilla hyväksikäytetään ukrainalaisia
Työolot ovat surkeita ja palkka kelvoton. https://yle.fi/a/74-20172942161947En ymmärrä käytöstäsi
Se on ollut eräänlaista hyväksikäyttöä. Että seura kyllä kelpaa palstan välityksellä silloin kun ei ole parempaakaan tek137900Kerrostaloihin ilmalämpöpumput
Ulkomailla näkee paljon ilmalämpöpumppuja kerrostalojen ulkoseinissä. Mikä estää taloyhtiötä hankkimasta niitä asuntoih69889Kiitoksia kaikille epäasiallisesta sisällöstä liputtaneille
Se ylimielisyys ja epäasiallisen julkaisun jakaminen ei sitten kantanut.79764Kirkonkylän puliveivarit
Hieman pistää silmään nuo puliukot ja akat kirkonkylän penkeillä ja S-marketin kulmilla. Tarttis varmaan tehdä asialle j13733Persaukinen puolankalainen kävi kerjäämässä paitaa
Ja lippistä. Nauratti suuresti kun katsoin. Kukahan mahtanee olla? Voipi katsoa täältä jutun. https://www.youtube.com18711