SQL-kyselyt -opastus

Anonyymi

Onko jossakin netissä tai kirjallisuudessa hyvää opasta joka opettaa JA SELITTÄÄ sql-tietokannan kyselyjen tekemisen ja tulosten käsittelemisen hyödynnettäväksi tulosteissa, laskennassa yms. Näkyy olevan monta eri tyyliä ja tapaa, mutta miten noita oppisi soveltamaan? Osaan kyllö jonkin verran tehdä kopioimalla.

16

263

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      Netti on pullollaan SQL:n tutoriaaleja. SQL on niin vanha keksintö, että kirjastoistakin löytyy luettavaa.

    • Anonyymi

      Laita edes pari linkkiä, joissa asia selitetään. Mitä kyselyssä tapahtuu, miten tieto asettuu hakutulokseen ja miten se kaivetaan sieltä ulos.

      • Anonyymi

        Jos meinaat opetella ohjelmointia, niin ensiksi pitää opetella hakemaan tietoa. Iltaläksyksi saat tehtävän; etsi pari linkkiä, joissa kysymäsi asiat on selitetty.


      • Anonyymi

        SELECT * FROM ...
        INSERT INTO ...
        UPDATE ... SET ...
        DELETE FROM ...

        Tuolla nelikolla pärjää jo perusasioissa. Monimutkaisiin JOINeihin mennään sitten vasta joulun jälkeen, jookosta.


    • Anonyymi

      Soveltamiseen ei taideta yhdessäkään oppaassa syventyä juuri ollenkaan. Kaikki pyörii jonkin turhanpäiväisen esimerkkitietokannan ympärillä, jota ei voi mihinkään käytännössä soveltaa.

      Todellinen oppiminen kuitenkin tapahtuu vasta soveltamisen kautta, täytyy olla olemassa jokin tarve jonka onnistunut toteuttaminen opettaa parhaitten. Koska sen tietokannaksi taltioidun tiedon esittäminen jonkin liittymän kautta on se jota on pakko harjoitella ja omaksua kunnolla, nuo tietokannan hallinta komennot ovat eri ympäristöissä hyvinkin erilaiset.

      Sopiva yhdistelmä saattaa olla Python, SQLite, HTML5, ja motivoituminen toteuttamaan jokin haluttu tavoite. Esimerkkinä vaikka se että sinulla olisi sairas halu pitää yllä tietokantaa S24 sivulla kirjoitetuista viesteistä, ja liittymälläsi pystytään esittämään kaaviota poistetuista viesteistä suhteessa kirjoitettuihin tai jotain muuta vastaavaa. Mikäli tavoitetta ei ole, ei oppimistakaan tule tapahtumaan, jolloin on aivan turha hukata aikaansa sellaiseen. Tätä ei voida opettaa, se lähtee sinusta, tai on lähtemättä.

    • Anonyymi

      SELECT * FROM ..

      Esim tämä JUURI tämä kiinnostaa. Miten ja miksi tästä eteenpäin kussakin tapauksessa? Haluaisin ymmärtää miten tieto käsitellään ja millaisissa muuttujissa.
      Olen tehnyt useita esimerkkejä ja ne TOIMIVAT, mutta halauaisin ymmärtää, en vain kopioida.
      Python, MySQL, PHP, HTML ovat kielinä kohtuullisen hyvin hallinnassa. Olen tehnyt ulkoasua ja käyttöliittymää mm. Haluan laajentaa tietokantaosaamista.

      • Anonyymi

        Tähti on ns. jokerimerkki.


      • Anonyymi

        Aloita nyt vaikkapa tuolta mistä kaikki muutkin aloittavat:

        https://www.w3schools.com/sql/default.asp

        Maailmassa on paljon asioita jotka on luotu toimimaan määrämuotoisesti tietyillä komennoilla eikä niiden syvintä olemusta ole tarkoitus jokaisen sisällöntuottajan jäädä murehtimaan. Käytä toimivia esimerkkejä niin pääset nopeasti asiassa eteenpäin. Turhat taustojen tutkijat putoaa tässä hektisessä maailmassa tylysti kelkasta. Seuraavan yt:n tullessa pomo kyllä muistaa kuka pohtii jatkuvasti turhaan mitä ja miksi samaan aikaan kun se toinen ratkaisi jo ongelman.


      • Anonyymi
        Anonyymi kirjoitti:

        Aloita nyt vaikkapa tuolta mistä kaikki muutkin aloittavat:

        https://www.w3schools.com/sql/default.asp

        Maailmassa on paljon asioita jotka on luotu toimimaan määrämuotoisesti tietyillä komennoilla eikä niiden syvintä olemusta ole tarkoitus jokaisen sisällöntuottajan jäädä murehtimaan. Käytä toimivia esimerkkejä niin pääset nopeasti asiassa eteenpäin. Turhat taustojen tutkijat putoaa tässä hektisessä maailmassa tylysti kelkasta. Seuraavan yt:n tullessa pomo kyllä muistaa kuka pohtii jatkuvasti turhaan mitä ja miksi samaan aikaan kun se toinen ratkaisi jo ongelman.

        Alkup kysyjä jatkaa: Osaan nuo SQL-lauseet jo melkein ulkoa. Mutta haluaisin lisää tietoa kyselyn tuloksen käsittelystä esim php-koodissa. Jos joku avaisi rivi riviltä mita tapahtuu, kun kyselyn tulos laitetaan taulukkoon. Tai kun poimitaan sarakkeen maksimi ja esitetään se. Tai kun etsitään arvo, jonka ID on x ja esitetään se.
        Teen peliporukalle kotisivua harrastuksena ja siellä esitetään erilaisia tuloksia yms.


      • Anonyymi
        Anonyymi kirjoitti:

        Alkup kysyjä jatkaa: Osaan nuo SQL-lauseet jo melkein ulkoa. Mutta haluaisin lisää tietoa kyselyn tuloksen käsittelystä esim php-koodissa. Jos joku avaisi rivi riviltä mita tapahtuu, kun kyselyn tulos laitetaan taulukkoon. Tai kun poimitaan sarakkeen maksimi ja esitetään se. Tai kun etsitään arvo, jonka ID on x ja esitetään se.
        Teen peliporukalle kotisivua harrastuksena ja siellä esitetään erilaisia tuloksia yms.

        PHP-tutoriaaleja on pilvin pimein. Olen joskus vuonna sejase tehnyt erään MySQL/PHP-viritelmän, ja kyllä siihen hommaan löytyi apuja googlaamalla. Eihän siinä ole loppujen lopuksi mistään muusta kyse kuin purkaa kyselyn tulokset haluamallaan tavalla.


      • Anonyymi
        Anonyymi kirjoitti:

        Alkup kysyjä jatkaa: Osaan nuo SQL-lauseet jo melkein ulkoa. Mutta haluaisin lisää tietoa kyselyn tuloksen käsittelystä esim php-koodissa. Jos joku avaisi rivi riviltä mita tapahtuu, kun kyselyn tulos laitetaan taulukkoon. Tai kun poimitaan sarakkeen maksimi ja esitetään se. Tai kun etsitään arvo, jonka ID on x ja esitetään se.
        Teen peliporukalle kotisivua harrastuksena ja siellä esitetään erilaisia tuloksia yms.

        "mita tapahtuu, kun kyselyn tulos laitetaan taulukkoon"

        Luettuasi onnistuneesti tietokannasta dataa tulos voidaan vaikkapa lajitella/purkaa useisiin indeksoituihin array-muuttujiin, mistä monimutkaisenkin datan kirjoittaminen rivi riviltä, indeksi indeksiltä taulukkomuotoiseksi näkymäksi ruudulle on helppoa - ja nopeaa.

        Yksinkertaisimmillaan pienet datat vain muokataan esim. mysqli_fetch_assoc() -funktiolla ihmiselle luettavaan muotoon mistä se while -luupilla printataan taulukoksi.

        Luo jonnekin ihan konkreettinen esimerkki jos haluat aiheesta jatkaa. Teoriapohjalla netti on tosiaan täynnä toimivia syntaxeja mitkä kyllä avaavat asian.

        Taisit jo aloituksessa mainita että sinulla on toimivat koodit käytössäsi eli tämä vaikuttaa turhalta jankkaamiselta. Vähän kuin ihmettelisi mitä tapahtuu kun suksi liukuu ladulla. Hiihtely kyllä sujuu mutta pitäisi vielä selvittää mitä silloin tapahtuu kun suksi liukuu :D


      • Anonyymi
        Anonyymi kirjoitti:

        Alkup kysyjä jatkaa: Osaan nuo SQL-lauseet jo melkein ulkoa. Mutta haluaisin lisää tietoa kyselyn tuloksen käsittelystä esim php-koodissa. Jos joku avaisi rivi riviltä mita tapahtuu, kun kyselyn tulos laitetaan taulukkoon. Tai kun poimitaan sarakkeen maksimi ja esitetään se. Tai kun etsitään arvo, jonka ID on x ja esitetään se.
        Teen peliporukalle kotisivua harrastuksena ja siellä esitetään erilaisia tuloksia yms.

        https://www.w3schools.com/php/php_mysql_select.asp esimerkkejä


    • Anonyymi

      Tietokannoilla on omat api:nsa eri ohjelmointikielille, esim oracle-java(jdbc), sybase-c(c-api), mysql-php/mysql-python(api tai pdo):
      löytyy kantojen dokumentaatiosta ja ko. ohjelmointikielten oppaista. Lisäksi eri kielillä löytyy frameworkkeja, millä voi olla oma api.

      Esim. tällä sivulla on esitetty eri mahdollisuuksia tehdä webbipalvelu ja -tietokanta (4 steppiä, mitkä antaa hyvät tiedot asiasta: web development, läpikäy ainakin ne mitä käytät)
      https://www.w3schools.com/whatis/default.asp

      Perinteisesti tulossivu (ulkoasu) on tehty pitkälti palvelimella (datat esim table-muoto), mutta nykyään kai pyritään välittämään vain datat ja ulkoasu tehdään erikseen (ks. esim. json/angularjs/nodejs/rest).

      Tässä esimerkki perinteisestä tulossivusta (.php -> .txt), demo tehty n 10 v sitten (usein tällaisella sivulla on login-autentikointi eli sessionhallinta, ja jos siinä annetaan inputia, inputin tarkistus db-injektion varalta:
      http://mkk-demo.net/opintojaksot.txt
      tulossivu näyttää selaimessa tältä (minimaalinen ulkoasu)
      http://mkk-demo.net/opintojaksot.pdf

    • Anonyymi

      UNOHDA MySQL, TARVITSET NÄITÄ
      SQLite3, PHP 7.2 HTML5, CSS, ja JavaScript

      sudo apt install php7.2-cli
      sudo apt-get install php7.2-sqlite
      sudo apt install sqlite3

      Testaa onnistunut asennuksesi tekemällä ver.php tiedosto, tällä sisällöllä:
      <?php
      $ver = SQLite3::version();
      echo $ver['versionString'] . "\n";
      echo $ver['versionNumber'] . "\n";
      var_dump($ver);
      ?>

      Ajettuasi sen tulisi näytöllä lukea:

      3.22.0
      3022000
      array(2) {
      ["versionString"]=>
      string(6) "3.22.0"
      ["versionNumber"]=>
      int(3022000)
      }

      Palataan asiaan kun olet onnistunut tässä. Tallenna tämä, saattaa poistua.

    • Anonyymi
    • Anonyymi

      Ohjeet löytyy; SQL Injection ... lol!

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

    Luetuimmat keskustelut

    1. Vesikin maksaa, miksei hengitysilma?

      Jatkuvasti itketään ettei ole rahaa mihinkään, mutta tilastojen mukaan rahaa on enemmän kuin koskaan, joten miksei asial
      Maailman menoa
      34
      1982
    2. Satuolennoista tarinointi ei kuulu peruskoulun tehtäviin

      Opetustunteja on muutenkin käytössä vain rajallinen määrä. Eli nämä satuhommat koulun ulkopuolelle vapaaehtoisiin harras
      Maailman menoa
      180
      1939
    3. Suomalainen perheenisä vaatii Suvivirren esittämisestä hyvityksiä

      Itse lapsena uskonnonopetuksesta vissiin traumoja saanut ihka suomalainen (!) perheenisä vaatii Espoon kaupungilta korva
      Maailman menoa
      392
      1822
    4. Mies profiloin sinut

      Etsit täysin hallittavaa mutta samalla poikkeuksellista ihmistä. Etsit jotain mitä et koskaan tule saamaan.
      Ikävä
      216
      1258
    5. Nostetaanko nainen kissa pöydälle?

      Ja selvitetään nämä tunteet?
      Ikävä
      92
      1133
    6. Kiantama kartelli

      Onko alhaisempaa kuin toimia ensin kartellissa ja lopuksi koittaa pelastaa nahkasa vasikoimalla muut kun jää kiinni? Eip
      Suomussalmi
      34
      990
    7. Unohdettu parannuksen kaste

      Kuinka kauan kestää helluntailaisten kastekoulutus ja onko se tosiaan parannuksenkaste koulutusta ?
      Kaste
      693
      945
    8. Oletko ollut *ittupää

      Siinäpä se kysymys eli oletko ollut *ittupää hänelle? Miksi?
      Ikävä
      95
      775
    9. Kiantama oy

      Tämän päivän uutiset.....https://www.is.fi/taloussanomat/art-2000012036470.html.
      Suomussalmi
      15
      708
    10. Haluaisin nähdä ja tavata sinut mies

      Vielä tässä elämässä.
      Ikävä
      32
      694
    Aihe