Suodata, järjestä ja rajoita tuloksia
Käytä filter_byta, order_byta ja sivutusta.
Suodata, järjestä ja rajoita tuloksia on ilmainen Flask Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Flask Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Flask Academy-kurssilla on yhteensä 4 oppituntia.
Rajaa tuloksia filter_bylla
Käytä filter_by()-metodia avainsana-argumenttien kanssa, jotta mukaan jäävät vain sarakkeen arvoa täsmällisesti vastaavat rivit. Syntaksi muistuttaa lähes luonnollista kieltä. 🎯
admins = User.query.filter_by(role="admin").all()Lisää tehoa filterillä
Kun tarvitset vertailuja, käytä filter()-metodia ja kokonaisia sarakelausekkeita pelkän yhtäsuuruuden sijaan.
adults = User.query.filter(User.age >= 18).all()Yhdistä ehdot
Välitä filter()-metodille useita lausekkeita, jolloin ne yhdistetään AND-operaatiolla ja kaikkien ehtojen on täytyttävä, jotta rivi täsmää.
q = User.query.filter(User.age >= 18, User.active == True)OR-ehdot
Kun haluat joko–tai-haun, kääri ehdot or_()-kutsuun. Tällöin rivi hyväksytään, jos yksikin ehdoista on tosi.
from sqlalchemy import or_
q = User.query.filter(or_(User.age < 18, User.vip))Järjestä order_bylla
Käytä order_by()-metodia tulosten järjestämiseen sarakkeen perusteella. Oletuksena rivit palautetaan nousevassa järjestyksessä.
users = User.query.order_by(User.name).all()Uusimmat ensin descillä
Kääri sarake desc()-funktion sisään kääntääksesi lajittelun päinvastaiseksi ja saadaksesi suurimmat tai uusimmat arvot ylimmiksi.
posts = Post.query.order_by(Post.created.desc()).all()Rajoita määrää limit-funktiolla
Lisää limit(), jotta haet vain ensimmäiset N riviä. Näin vastaukset pysyvät pieninä ja kyselyt nopeina.
top = Post.query.order_by(Post.score.desc()).limit(5).all()Ohita rivit offset-funktiolla
Käytä offset()-funktiota ohittaaksesi tietyn määrän rivejä ennen tulosten palauttamista. Yhdessä limit-funktion kanssa se mahdollistaa yksinkertaisen sivutuksen.
page2 = Post.query.limit(10).offset(10).all()Todellinen sivutus paginate-funktiolla
Flask-SQLAlchemy sisältää sivutuksen paginate()-funktiossa, joka palauttaa yhdellä kutsulla kohteet ja hyödylliset sivutuksen metatiedot.
p = Post.query.paginate(page=2, per_page=10)Ketjuta kaikki yhteen
Suodata, järjestä ja rajoita tuloksia sujuvasti ketjuttamalla kutsut, eikä mitään suoriteta ennen kuin päätät ketjun all- tai first-kutsuun.
q = Post.query.filter_by(public=True).order_by(Post.id.desc()).limit(3)Järjestyksellä on merkitystä rajoituksissa
Yhdistä limit() aina order_by-kutsuun. Ilman lajittelua ei ole ennalta määrättyä, mitkä rivit palautetaan.
Pikakertaus
Haluat kolme korkeimman pistemäärän saanutta julkaisua. Millä lausekkeella pistemäärä saadaan ylimmäksi tulokseksi?
Kertaus: Tulosten muotoilu
Osaat nyt suodattaa, lajitella order_by- ja desc-kutsuilla sekä rajata tuloksia limit-, offset- ja paginate-kutsuilla. Tehokkaat haut ovat nyt käytössä! 🚀
Opi Python tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 30
- Oppitunnit
- 120
Usein kysytyt kysymykset
Onko oppitunti ”Suodata, järjestä ja rajoita tuloksia” ilmainen?
Kyllä – oppitunnin ”Suodata, järjestä ja rajoita tuloksia” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Flask Academy-kurssin, päivitä CoddyKit PROhon. Flask Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Suodata, järjestä ja rajoita tuloksia”?
Käytä filter_byta, order_byta ja sivutusta. Harjoittelet Flask Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Flask Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Flask Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/4.
Kuinka kauan ”Suodata, järjestä ja rajoita tuloksia”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Flask Academy-oppitunnilla?
Kyllä. Jokainen Flask Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Hae rivejä querylla ja getillä
- Suodata, järjestä ja rajoita tuloksia
- Määritä relaatiot ja vierasavaimet
- Joinit ja lazy- sekä eager-lataus