{"id":39,"date":"2021-03-04T07:29:37","date_gmt":"2021-03-04T07:29:37","guid":{"rendered":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/?post_type=chapter&#038;p=39"},"modified":"2021-05-04T15:49:26","modified_gmt":"2021-05-04T15:49:26","slug":"andmebaasi-importimine-ja-uurimine-ning-paringute-piiramine","status":"publish","type":"chapter","link":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/chapter\/andmebaasi-importimine-ja-uurimine-ning-paringute-piiramine\/","title":{"raw":"Andmebaasi importimine ja uurimine ning p\u00e4ringute piiramine","rendered":"Andmebaasi importimine ja uurimine ning p\u00e4ringute piiramine"},"content":{"raw":"<h2>DBeaveri projektide importimine ja eksportimine<\/h2>\r\nSelleks, et kiiresti ja lihtsasti suurt andmebaasi \u00fcles seada, on hea kasutada DBeaveri projektide importimise ja eksportimise v\u00f5imalust.\r\n\r\nKuigi DBeaveris on importimise ja eksportimise sammud omavahel v\u00e4ga sarnased, vaatame igaks juhuks \u00fcle m\u00f5lemad neist. Alustame importimisest, sest seda l\u00e4heb peatselt vaja, saaksime edaspidi suures Netflixi teemalises andmebaasis t\u00f6\u00f6tada. Seej\u00e4rel vaatame ka eksportimist, mida v\u00f5ib vaja minna n\u00e4iteks siis, kui tahad oma andmebaasi \u00f5petaja v\u00f5i tiimikaaslasega jagada.\r\n\r\nEnne importimist lae imporditava andmebaasi projekti fail alla <a href=\"https:\/\/drive.google.com\/file\/d\/1uTWEr6QYockMiP-CrW8dCGrJ2aaLzTBA\/view?usp=sharing\">siit<\/a>.\r\n\r\nProjektisisene andmebaas sisaldab t\u00f6\u00f6deldud andmeid, mis on p\u00e4rit <a href=\"https:\/\/www.kaggle.com\/shivamb\/netflix-shows\">siit<\/a> andmestikust. Huvi korral v\u00f5ib ka algandmeid uurida, kuid neid siinkohal kasutama ei pea.\r\n<h3>DBeaveri projektide importimine<\/h3>\r\nOlemasoleva DBeaveri projekti failist importimiseks tuleb k\u00f5igepealt avada DBeaver. Seej\u00e4rel tuleb DBeaveris \u00fclevalt vasakult valida vaade <em>Projects<\/em>\u00a0(mitte <em>Database Navigator<\/em>).\r\n\r\nJ\u00e4rgmisena vali DBeaveri aknas \u00fclevalt men\u00fc\u00fcst <em>File<\/em> \u2192 <em>Import<\/em> nagu on n\u00e4idatud alloleval pildil.\r\n\r\n<img class=\"alignnone size-full wp-image-88\" src=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/4p.png\" alt=\"\" width=\"1026\" height=\"770\" \/>\r\n\r\nAvanenud aknas kliki kaustale <em>DBeaver<\/em> ning seej\u00e4rel selle alamkaustale <em>Project<\/em>. L\u00f5puks kliki nupule <em>Next<\/em>.\r\n\r\n<img class=\"alignnone size-full wp-image-89\" src=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/5p.png\" alt=\"DBeaver'is importimise teine samm\" width=\"511\" height=\"543\" \/>\r\n\r\nJ\u00e4rgmises vaates t\u00e4psusta esmalt imporditava projekti faili asukoht. Seej\u00e4rel m\u00e4rgi imporditav projekt valituks (veerus <em>Original Name<\/em>) ning m\u00e4\u00e4ra sellele ka meeldiv nimi (veerus <em>Target Name<\/em>), soovitatavalt kujul <em>Netflix_Perekonnanimi<\/em>. L\u00f5puks kliki nupule <em>Finish<\/em>.\r\n\r\n<img class=\"alignnone size-full wp-image-894\" src=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/6p-2.png\" alt=\"DBeaver'i projekti importimise kolmas samm\" width=\"511\" height=\"543\" \/>\r\n\r\nN\u00fc\u00fcd on Netflixi andmebaasi sisaldav projekt failist imporditud, kuid on j\u00e4\u00e4nud veel kontrollida, kas k\u00f5ik ka t\u00f6\u00f6tab.\r\n\r\nKontrolli, kas p\u00e4\u00e4sed projekti sisule ligi. Kui p\u00e4\u00e4sed, siis j\u00e4relikult \u00fchendus serveriga t\u00f6\u00f6tab ning oled edukalt projekti importinud. Kui ei p\u00e4\u00e4se, tuleb ilmselt muuta \u00fchenduse seadeid. \u00dchendusega tekib probleeme peamiselt vaid siis, kui projekt on eksporditud \u00fchest operatsioonis\u00fcsteemist ning seej\u00e4rel seda imporditakse teises operatsioonis\u00fcsteemis.\r\n\r\nProjekti serveri \u00fchenduse seadeid saab muuta nii nagu alloleval pildil ehk tehes paremklikk \u00fchenduse <em>postgres<\/em> peale ja valides <em>Edit Connection<\/em>.\r\n\r\n<img class=\"alignnone size-full wp-image-895\" src=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/7p-1.png\" alt=\"DBeaver'i projekti \u00fchenduse seadete avamine\" width=\"1026\" height=\"771\" \/>\r\n\r\nPane t\u00e4hele, et \u00fclaloleval pildil \u00fchendus juba t\u00f6\u00f6tab. Seda n\u00e4eb selle j\u00e4rgi, et \u00fchenduse <em>postgre<\/em><em>s<\/em> ikooni juures on roheline linnuke. Samuti on n\u00e4ha, et projekt on paksus kirjas. Seda, mida see t\u00e4hendab, vaatame natuke hiljem.\r\n\r\nKui on tarvis \u00fchenduse seadeid muuta, m\u00e4\u00e4ra need nii nagu on n\u00e4idatud sinu operatsioonis\u00fcsteemile vastavas DBeaveri esimese k\u00e4ivitamise <a href=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/chapter\/tarkvara-installeerimine\/\">juhendis<\/a>.\r\n\r\nN\u00fc\u00fcd oled edukalt DBeaveri projekti failist importinud.\r\n<h3>DBeaveri projektide eksportimine<\/h3>\r\nVaatame tuleviku tarbeks ka seda, kuidas projekte eksportida. Hetkel pole aga j\u00e4rgnevaid samme tarvis kaasa teha.\r\n\r\nOlemasoleva DBeaveri projekti eksportimiseks faili tuleb k\u00f5igepealt avada DBeaver. Seej\u00e4rel tuleb DBeaveris \u00fclevalt vasakult valida vaade <em>Projects <\/em>(mitte <em>Database Navigator<\/em>).\r\n\r\nJ\u00e4rgmisena vali DBeaveri aknas \u00fclevalt men\u00fc\u00fcst <em>File<\/em> \u2192 <em>Export<\/em> nagu on n\u00e4idatud alloleval pildil.\r\n\r\n<img class=\"alignnone size-full wp-image-93\" src=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/1p-3.png\" alt=\"DBeaver'i projekti eksportimise esimene samm\" width=\"1026\" height=\"770\" \/>\r\n\r\nAvanenud aknas kliki kaustale <em>DBeaver<\/em> ning seej\u00e4rel selle alamkaustale <em>Project<\/em>. L\u00f5puks kliki nupule <em>Next<\/em>.\r\n\r\n<img class=\"alignnone size-full wp-image-94\" src=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/2p.png\" alt=\"DBeaver'i projekti eksportimise teine samm\" width=\"511\" height=\"543\" \/>\r\n\r\nJ\u00e4rgmises vaates m\u00e4rgi eksporditav projekt valituks ning m\u00e4\u00e4ra eksporditavale failile meeldiv nimi (v\u00e4li <em>Output file<\/em>), n\u00e4iteks kujul <em>Netflix_Perekonnanimi_eksport<\/em> ja asukoht (v\u00e4li <em>Directory<\/em>). L\u00f5puks kliki nupule <em>Finish<\/em>.\r\n\r\n<img class=\"alignnone size-full wp-image-898\" src=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/3p-2.png\" alt=\"DBeaver'i projekti eksportimise kolmas samm\" width=\"511\" height=\"543\" \/>\r\n\r\nN\u00fc\u00fcd oled edukalt DBeaveri projekti faili eksportinud.\r\n<h2>Netflixi andmebaasi seadistamine ja uurimine<\/h2>\r\nN\u00fc\u00fcdseks peaks Netflixi andmebaas olema imporditud, kuid j\u00e4\u00e4nud on veel teha m\u00f5ned seadistused.\r\n\r\nP\u00e4rast importimist tuleks imporditud projekt m\u00e4\u00e4rata vaikeprojektiks. Hetkeseisuga on vaikeprojektiks ilmselt <em>General<\/em>, seet\u00f5ttu on selle nimi ka paksus kirjas. Projekte saab m\u00e4\u00e4rata vaikeprojektiks <em>Projects<\/em>. Selleks tuleb teha parema klikk projekti nime peal ja valida <em>Set Active Project<\/em>.\r\n\r\nSeej\u00e4rel ava <em>Projects<\/em> vaates j\u00e4rjest imporditud projekti alamen\u00fc\u00fcsid kuni n\u00e4ed k\u00f5iki skeemasid (alamen\u00fc\u00fc <em>Schemas<\/em> all) ning m\u00e4\u00e4ra skeema <em>netflix_algne<\/em> vaikeskeemaks. Selleks tee parem klikk skeema nime peal ja vali <em>Set as default<\/em>. T\u00f5en\u00e4oliselt tuleb seda sammu korrata igal DBeaveri k\u00e4ivitamisel.\r\n\r\nTulevaste importimise ja eksportimisega seotud probleemide v\u00e4ltimiseks on soovitatav skeema <em>netflix_algne<\/em> \u00fcmber nimetada kujule <em>netflix_perekonnanimi<\/em>. Selleks tee skeema <em>netflix_algne<\/em> peal parem klikk ja vali <em>Rename<\/em>, sisesta enda perekonnanimele vastav nimi ning vajuta <em>OK <\/em>ja seej\u00e4rel <em>Persist<\/em>.\r\n\r\nSegaduse v\u00e4ltimiseks kustuta siinkohal \u00e4ra algne projekt nimega <em>General<\/em>. Selleks tee projekti peal paremklikk ja vali <em>Delete<\/em>. Soovi korral v\u00f5ib projekti enne kustutamist harjutamise nimel ka faili eksportida.\r\n\r\nTasub teada, et DBeaver ei luba vaikeprojekti kustutada. Seega, kui tekib probleeme projekti <em>General<\/em> kustutamisega, on see ilmselt siiani vaikeprojektiks j\u00e4\u00e4nud.\r\n\r\nN\u00fc\u00fcd olemegi Neftlixi andmebaasi DBeaveri projekti abil importinud ning seej\u00e4rel korrektselt \u00fcles seadnud.\r\n\r\nJ\u00e4rgmine samm on tutvuda meie uue andmebaasiga, millega t\u00f6\u00f6tame mooduli l\u00f5puni. Selleks on DBeaveri abil soovitatav p\u00f5hjalikult uurida k\u00f5iki andmebaasis olevaid tabeleid, kasutades selleks <a href=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/chapter\/tarkvara-installimine-ja-naidisandmebaasi-loomine\/\">\u00fcleeelmises peat\u00fckis<\/a> \u00f5petatut.\r\n\r\nUuri nii tabelites olevaid tunnuseid, nende andmet\u00fc\u00fcpe kui ka tabelis olevaid andmeid \u00fcldiselt. Proovi m\u00f5ista, mida iga tunnus t\u00e4hendab ning ka seda, milliseid andmeid see andmebaas \u00fcldse hoiustab. Mida paremini sa andmebaasi olemust m\u00f5istad, seda lihtsam on hiljem p\u00e4ringuid looma hakata.\r\n\r\nKui j\u00e4\u00e4d h\u00e4tta andmebaasi \u00fclesehituse, andmet\u00fc\u00fcpide jm m\u00f5istmisega, vaata \u00fcle erinevaid <a href=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/part\/main-body\/\">eelmise mooduli<\/a> peat\u00fckke.\r\n\r\n[h5p id=\"5\"]\r\n<h2>P\u00e4ringute piiramine<\/h2>\r\nJ\u00e4tkame n\u00fc\u00fcd p\u00e4ringute osaga ning vaatame t\u00e4psemalt, kuidas kasutada piiranguid keerukamate p\u00e4ringute loomisel.\r\n\r\nP\u00e4ringuid on vaja piirata selleks, et kontrollida p\u00e4ringute tulemustesse j\u00f5udvate kirjete arvu. Kui tabelis v\u00f5ib algselt olla mitu tuhat kirjet, on p\u00e4ringute piiramise abil v\u00f5imalik tulemusi kitsendada nii, et alles j\u00e4\u00e4b vaid \u00fcksainus huvipakkuv kirje.\r\n\r\nTavap\u00e4raste p\u00e4ringute piiramiseks kasutatakse SQL-s m\u00e4rks\u00f5na <strong><code><span style=\"color: #970000\">WHERE<\/span><\/code><\/strong>. Hilisemates peat\u00fckkides vaatame ka \u00fcht teist m\u00e4rks\u00f5na, mida kasutatakse erip\u00e4rasemate p\u00e4ringute piiramiseks.\r\n\r\nM\u00e4rks\u00f5na <strong><code><span style=\"color: #970000\">WHERE<\/span><\/code><\/strong> ja sellele j\u00e4rgnev piirangut t\u00e4psustav osa k\u00e4ib seni\u00f5pitud p\u00e4ringulause kuju l\u00f5ppu.\r\n\r\nN\u00e4iteks, kui soovime leida k\u00f5igi tabelis Riigid olevate riikide k\u00f5iki andmeid, kasutaksime selleks j\u00e4rgmist p\u00e4ringut:\r\n<ul>\r\n \t<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> * <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> riigid<span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\r\n<\/ul>\r\nSelleks, et n\u00e4ha andmeid vaid Soome kohta, kasutaksime aga m\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>WHERE<\/strong><\/span><\/code> eelmisele p\u00e4ringule lisaks j\u00e4rgnevalt:\r\n<ul>\r\n \t<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> * <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> riigid <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> nimi = <span style=\"color: #008000\">'Finland'<\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\r\n<\/ul>\r\nKatseta ka ise eelnevat kahte p\u00e4ringut, v\u00f5rdle nende tulemusi ning proovi piiramist ka teiste riikide nimede alusel.\r\n\r\nMeeldetuletuseks, jutum\u00e4rkide paari asemel kasutatakse siinkohal alati \u00fclakomade paari. Kuna jutum\u00e4rkide ekslik kasutamine v\u00f5ib anda kohati arusaamatuid veateateid, on seda kasulik meeles pidada.\r\n\r\n<code><span style=\"color: #970000\"><strong>WHERE<\/strong><\/span><\/code> on v\u00f5imas m\u00e4rks\u00f5na selle poolest, et sellele j\u00e4rgnevaid piiranguid saab m\u00e4\u00e4rata v\u00e4ga paljudel erinevatel alustel. Eespool n\u00e4idatud v\u00f5rdusm\u00e4rk ei ole ammugi ainus piiramisel kasutatav operaator. N\u00e4iteks, v\u00f5imalik on kasutada ka matemaatikast tuttavaid operaatoreid <code>&lt;<\/code>, <code>&gt;<\/code>, <code>&lt;=<\/code>, <code>&gt;=<\/code> ja <code>&lt;&gt;<\/code> ehk <code>!=<\/code> (mitte v\u00f5rdne).\r\n\r\nNimetatud operaatoreid saab kasutada nii s\u00f5nede kui ka arvude v\u00f5rdlemisel. Kui neid kasutada arvuliste v\u00e4\u00e4rtustega, siis \u00fclakomasid arvude \u00fcmber ei panda.\r\n\r\nN\u00e4iteks j\u00e4rgmine p\u00e4ring piirab tulemusi riikide pindala ehk arvulise v\u00e4\u00e4rtuse alusel:\r\n<ul>\r\n \t<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> * <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> riigid <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> pindala &lt; <span style=\"color: #0000ff\">10000<\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\r\n<\/ul>\r\n[h5p id=\"6\"]\r\n\r\nM\u00e4rks\u00f5nale <code><span style=\"color: #970000\"><strong>WHERE<\/strong><\/span><\/code> j\u00e4rgnevat avaldist saab ka loogiliselt vastupidiseks p\u00f6\u00f6rata, kirjutades <code><span style=\"color: #970000\"><strong>WHERE<\/strong><\/span><\/code> asemel <code><span style=\"color: #970000\"><strong>WHERE NOT<\/strong><\/span><\/code>. Kuigi \u00fcldjuhul on samav\u00e4\u00e4rse tulemuseni lihtne j\u00f5uda kirjutades n\u00e4iteks operaatori <code>=<\/code> asemel <code>!=<\/code>, v\u00f5ib m\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>NOT<\/strong><\/span><\/code> kasutamine olla m\u00f5nes olukorras isegi loomulikum v\u00f5i ka kiirem, kui piiranguid on mitu.\r\n\r\n[h5p id=\"7\"]\r\n\r\nM\u00e4rks\u00f5nale <code><span style=\"color: #970000\"><strong>WHERE<\/strong><\/span><\/code> v\u00f5ib j\u00e4rgneda ka mitu avaldist, mida eraldatakse omavahel m\u00e4rks\u00f5nadega <code><span style=\"color: #970000\"><strong>AND<\/strong><\/span><\/code> v\u00f5i <code><span style=\"color: #970000\"><strong>OR<\/strong><\/span><\/code>. M\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>AND<\/strong><\/span><\/code> t\u00e4histab seda, et m\u00f5lemal pool m\u00e4rks\u00f5na olevad avaldised peavad olema t\u00f5esed. M\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>OR<\/strong><\/span><\/code> t\u00e4histab aga seda, et v\u00e4hemalt \u00fcks m\u00e4rks\u00f5na vasakul v\u00f5i paremal poolel olevatest avaldistest peab olema t\u00f5ene. M\u00f5lemat m\u00e4rks\u00f5na v\u00f5ib kasutada ka rohkem kui \u00fche korra.\r\n\r\nN\u00e4iteks j\u00e4rgneva p\u00e4ringu tulemuses on k\u00f5igi riikide nimed, milles on \u00fcheaegselt rahvastikuarv \u00fcle 4 miljoni, milles internetti kasutab alla 50% elanikkonnast ning mille pindala on \u00fcle 1000000 km<sup>2<\/sup>:\r\n<ul>\r\n \t<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> * <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> riigid <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> rahvastikuarv &gt; <span style=\"color: #0000ff\">4000000<\/span> <span style=\"color: #970000\"><strong>AND<\/strong><\/span> interneti_kasutajad &lt; <span style=\"color: #0000ff\">50<\/span> <span style=\"color: #970000\"><strong>AND<\/strong><\/span> pindala &gt;= <span style=\"color: #0000ff\">1000000<\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\r\n<\/ul>\r\n[h5p id=\"8\"]\r\n\r\nM\u00e4rks\u00f5na <code><span style=\"color: #800000\"><strong>WHERE<\/strong><\/span><\/code> j\u00e4rel on v\u00f5imalik kasutada ka p\u00e4ringulausete kirjutamist lihtsustavaid abim\u00e4rks\u00f5nu nagu <code><span style=\"color: #800000\"><strong>IS<\/strong><\/span><\/code>, <code><span style=\"color: #800000\"><strong>IN<\/strong><\/span><\/code> ja <code><span style=\"color: #800000\"><strong>BETWEEN<\/strong><\/span><\/code>.\r\n\r\nM\u00e4rks\u00f5na <code><span style=\"color: #800000\"><strong>IS<\/strong><\/span><\/code> ja selle vastandit <code><span style=\"color: #800000\"><strong>IS NOT<\/strong><\/span><\/code> on v\u00f5imalik kasutada selleks, et leida, kus on v\u00f5i just ei ole tunnuse v\u00e4\u00e4rtused puudu. N\u00e4iteks j\u00e4rgneva p\u00e4ringu tulemuses on k\u00f5igi selliste teoste pealkirjad, mille loomise riik on teadmata:\r\n<ul>\r\n \t<li><code><span style=\"color: #800000\"><strong>SELECT<\/strong><\/span> pealkiri <span style=\"color: #800000\"><strong>FROM<\/strong><\/span> teosed <span style=\"color: #800000\"><strong>WHERE<\/strong><\/span> riigi_id <span style=\"color: #800000\"><strong>IS NULL<\/strong><\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\r\n<\/ul>\r\nKui \u00fclemises p\u00e4ringus kirjutada <code><span style=\"color: #970000\"><strong>IS<\/strong><\/span><\/code> asemel <code><span style=\"color: #970000\"><strong>IS NOT<\/strong><\/span><\/code>, saaksime vastupidiselt k\u00f5igi selliste teoste pealkirjad, mille loomise riik on teada.\r\n\r\nM\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>BETWEEN<\/strong><\/span><\/code> saab kasutada selleks, kui tahta piirata mingit tunnust kahe v\u00e4\u00e4rtuse vahel. N\u00e4iteks on kaks j\u00e4rgmist p\u00e4ringulauset sisult v\u00f5rdsed, kuid m\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>BETWEEN<\/strong><\/span><\/code> kasutav lause on l\u00fchem ning lihtsamini loetav:\r\n<ul>\r\n \t<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> pealkiri, valjalaske_aasta <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> teosed <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> valjalaske_aasta <span style=\"color: #970000\"><strong>BETWEEN<\/strong><\/span> <span style=\"color: #0000ff\">2016<\/span> <span style=\"color: #970000\"><strong>AND<\/strong><\/span> <span style=\"color: #0000ff\">2018<\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\r\n \t<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> pealkiri, valjalaske_aasta <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> teosed <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> valjalaske_aasta &gt;= <span style=\"color: #0000ff\">2016<\/span> <span style=\"color: #970000\"><strong>AND<\/strong><\/span> valjalaske_aasta &lt;= <span style=\"color: #0000ff\">2018<\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\r\n<\/ul>\r\nPane t\u00e4hele, et <code><span style=\"color: #970000\"><strong>BETWEEN<\/strong><\/span> <span style=\"color: #0000ff\">2016<\/span> <span style=\"color: #970000\"><strong>AND<\/strong><\/span> <span style=\"color: #0000ff\">2018<\/span><\/code> t\u00e4hendab sisuliselt matemaatikast tuttavat l\u00f5iku [2016, 2018], mitte aga vahemikku (2016, 2018).\r\n\r\nM\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>IN<\/strong><\/span><\/code> saab kasutada selleks, et vaadelda, kas tunnuse v\u00e4\u00e4rtus sisaldub etteantavas listis. Ka j\u00e4rgmised kaks p\u00e4ringulauset on sisult v\u00f5rdsed, kuid m\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>IN<\/strong><\/span><\/code> kasutav lause on taaskord l\u00fchem ning lihtsamini loetav:\r\n<ul>\r\n \t<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> pealkiri <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> teosed <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> riigi_id <span style=\"color: #970000\"><strong>IN<\/strong><\/span> (<span style=\"color: #0000ff\">22<\/span>, <span style=\"color: #0000ff\">73<\/span>, <span style=\"color: #0000ff\">74<\/span>)<span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\r\n \t<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> pealkiri <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> teosed <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> riigi_id = <span style=\"color: #0000ff\">22<\/span> <span style=\"color: #970000\"><strong>OR<\/strong><\/span> riigi_id = <span style=\"color: #0000ff\">73<\/span> <span style=\"color: #970000\"><strong>OR<\/strong><\/span> riigi_id = <span style=\"color: #0000ff\">74<\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\r\n<\/ul>\r\n[h5p id=\"9\"]\r\n\r\nTasub teada, et m\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>NOT<\/strong><\/span><\/code> on v\u00f5imalik ka m\u00e4rks\u00f5nadega <strong><code><span style=\"color: #970000\">BETWEEN<\/span><\/code><\/strong> ja <code><span style=\"color: #970000\"><strong>IN<\/strong><\/span><\/code> kombineerida, kirjutades vastavalt <code><span style=\"color: #970000\"><strong>NOT BETWEEN<\/strong><\/span><\/code> ja <code><span style=\"color: #970000\"><strong>NOT IN<\/strong><\/span><\/code>.\r\n\r\nK\u00f5ige paindlikum ja mitmek\u00fclgsem m\u00e4rks\u00f5naga <code><span style=\"color: #970000\"><strong>WHERE<\/strong><\/span><\/code> kokku k\u00e4iv m\u00e4rks\u00f5na on <code><span style=\"color: #970000\"><strong>LIKE<\/strong><\/span><\/code>. Lihtsalt \u00f6eldes on selle abil v\u00f5imalik kontrollida tunnuste v\u00e4\u00e4rtuste sarnasust sellega, mida <strong><code><span style=\"color: #970000\">LIKE<\/span><\/code><\/strong> j\u00e4rel t\u00e4psustatakse.\r\n\r\nJooksuta j\u00e4rgmiseid p\u00e4ringuid, v\u00f5rdle nende tulemusi ning m\u00f5tiskle, kuidas ja miks need nii t\u00f6\u00f6tavad:\r\n<ul>\r\n \t<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> nimi <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> isikud <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> nimi <span style=\"color: #970000\"><strong>LIKE<\/strong><\/span> <span style=\"color: #008000\">'Kim%'<span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/span><\/code><\/li>\r\n \t<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> nimi <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> isikud <span style=\"color: #970000\"><strong>WHERE<\/strong> <\/span>nimi <span style=\"color: #970000\"><strong>LIKE<\/strong><\/span> <span style=\"color: #008000\">'%Kim'<\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\r\n \t<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> nimi <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> isikud <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> nimi <span style=\"color: #970000\"><strong>LIKE<\/strong><\/span> <span style=\"color: #008000\">'%Kim%'<\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\r\n<\/ul>\r\n[h5p id=\"10\"]\r\n\r\nJooksuta j\u00e4rgmist p\u00e4ringut (p\u00e4rast Kim'i on 6 alakriipsu) ja m\u00f5tiskle, kuidas see t\u00f6\u00f6tab ning mille poolest see eelnevast kolmest p\u00e4ringust erineb:\r\n<ul>\r\n \t<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> nimi <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> isikud <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> nimi <span style=\"color: #970000\"><strong>LIKE<\/strong><\/span> <span style=\"color: #008000\">'Kim_______'<\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\r\n<\/ul>\r\n[h5p id=\"11\"]\r\n\r\nProtsendi m\u00e4rke ja alakriipse on p\u00e4rast m\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>LIKE<\/strong><\/span><\/code> esinevas s\u00f5nes v\u00f5imalik ka kombineerida.\r\n\r\nN\u00fc\u00fcd oleme \u00f5ppinud, kuidas Netflixi andmebaasi DBeaveri projekti abil importida ning ka seda, kuidas suures andmebaasis p\u00e4ringuid teha ning neid piirata. Seega saame hakata \u00f5ppima, kuidas kasutada aritmeetilisi tehteid ja funktsioone veeruavaldistena, mille k\u00e4igus kasutame k\u00f5ike seni \u00f5pitut.\r\n\r\n&nbsp;\r\n\r\n&nbsp;\r\n\r\n&nbsp;\r\n\r\n&nbsp;","rendered":"<h2>DBeaveri projektide importimine ja eksportimine<\/h2>\n<p>Selleks, et kiiresti ja lihtsasti suurt andmebaasi \u00fcles seada, on hea kasutada DBeaveri projektide importimise ja eksportimise v\u00f5imalust.<\/p>\n<p>Kuigi DBeaveris on importimise ja eksportimise sammud omavahel v\u00e4ga sarnased, vaatame igaks juhuks \u00fcle m\u00f5lemad neist. Alustame importimisest, sest seda l\u00e4heb peatselt vaja, saaksime edaspidi suures Netflixi teemalises andmebaasis t\u00f6\u00f6tada. Seej\u00e4rel vaatame ka eksportimist, mida v\u00f5ib vaja minna n\u00e4iteks siis, kui tahad oma andmebaasi \u00f5petaja v\u00f5i tiimikaaslasega jagada.<\/p>\n<p>Enne importimist lae imporditava andmebaasi projekti fail alla <a href=\"https:\/\/drive.google.com\/file\/d\/1uTWEr6QYockMiP-CrW8dCGrJ2aaLzTBA\/view?usp=sharing\">siit<\/a>.<\/p>\n<p>Projektisisene andmebaas sisaldab t\u00f6\u00f6deldud andmeid, mis on p\u00e4rit <a href=\"https:\/\/www.kaggle.com\/shivamb\/netflix-shows\">siit<\/a> andmestikust. Huvi korral v\u00f5ib ka algandmeid uurida, kuid neid siinkohal kasutama ei pea.<\/p>\n<h3>DBeaveri projektide importimine<\/h3>\n<p>Olemasoleva DBeaveri projekti failist importimiseks tuleb k\u00f5igepealt avada DBeaver. Seej\u00e4rel tuleb DBeaveris \u00fclevalt vasakult valida vaade <em>Projects<\/em>\u00a0(mitte <em>Database Navigator<\/em>).<\/p>\n<p>J\u00e4rgmisena vali DBeaveri aknas \u00fclevalt men\u00fc\u00fcst <em>File<\/em> \u2192 <em>Import<\/em> nagu on n\u00e4idatud alloleval pildil.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-88\" src=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/4p.png\" alt=\"\" width=\"1026\" height=\"770\" srcset=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/4p.png 1026w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/4p-300x225.png 300w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/4p-1024x768.png 1024w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/4p-768x576.png 768w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/4p-65x49.png 65w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/4p-225x169.png 225w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/4p-350x263.png 350w\" sizes=\"auto, (max-width: 1026px) 100vw, 1026px\" \/><\/p>\n<p>Avanenud aknas kliki kaustale <em>DBeaver<\/em> ning seej\u00e4rel selle alamkaustale <em>Project<\/em>. L\u00f5puks kliki nupule <em>Next<\/em>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-89\" src=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/5p.png\" alt=\"DBeaver'is importimise teine samm\" width=\"511\" height=\"543\" srcset=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/5p.png 511w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/5p-282x300.png 282w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/5p-65x69.png 65w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/5p-225x239.png 225w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/5p-350x372.png 350w\" sizes=\"auto, (max-width: 511px) 100vw, 511px\" \/><\/p>\n<p>J\u00e4rgmises vaates t\u00e4psusta esmalt imporditava projekti faili asukoht. Seej\u00e4rel m\u00e4rgi imporditav projekt valituks (veerus <em>Original Name<\/em>) ning m\u00e4\u00e4ra sellele ka meeldiv nimi (veerus <em>Target Name<\/em>), soovitatavalt kujul <em>Netflix_Perekonnanimi<\/em>. L\u00f5puks kliki nupule <em>Finish<\/em>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-894\" src=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/6p-2.png\" alt=\"DBeaver'i projekti importimise kolmas samm\" width=\"511\" height=\"543\" srcset=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/6p-2.png 511w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/6p-2-282x300.png 282w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/6p-2-65x69.png 65w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/6p-2-225x239.png 225w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/6p-2-350x372.png 350w\" sizes=\"auto, (max-width: 511px) 100vw, 511px\" \/><\/p>\n<p>N\u00fc\u00fcd on Netflixi andmebaasi sisaldav projekt failist imporditud, kuid on j\u00e4\u00e4nud veel kontrollida, kas k\u00f5ik ka t\u00f6\u00f6tab.<\/p>\n<p>Kontrolli, kas p\u00e4\u00e4sed projekti sisule ligi. Kui p\u00e4\u00e4sed, siis j\u00e4relikult \u00fchendus serveriga t\u00f6\u00f6tab ning oled edukalt projekti importinud. Kui ei p\u00e4\u00e4se, tuleb ilmselt muuta \u00fchenduse seadeid. \u00dchendusega tekib probleeme peamiselt vaid siis, kui projekt on eksporditud \u00fchest operatsioonis\u00fcsteemist ning seej\u00e4rel seda imporditakse teises operatsioonis\u00fcsteemis.<\/p>\n<p>Projekti serveri \u00fchenduse seadeid saab muuta nii nagu alloleval pildil ehk tehes paremklikk \u00fchenduse <em>postgres<\/em> peale ja valides <em>Edit Connection<\/em>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-895\" src=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/7p-1.png\" alt=\"DBeaver'i projekti \u00fchenduse seadete avamine\" width=\"1026\" height=\"771\" srcset=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/7p-1.png 1026w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/7p-1-300x225.png 300w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/7p-1-1024x769.png 1024w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/7p-1-768x577.png 768w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/7p-1-65x49.png 65w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/7p-1-225x169.png 225w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/7p-1-350x263.png 350w\" sizes=\"auto, (max-width: 1026px) 100vw, 1026px\" \/><\/p>\n<p>Pane t\u00e4hele, et \u00fclaloleval pildil \u00fchendus juba t\u00f6\u00f6tab. Seda n\u00e4eb selle j\u00e4rgi, et \u00fchenduse <em>postgre<\/em><em>s<\/em> ikooni juures on roheline linnuke. Samuti on n\u00e4ha, et projekt on paksus kirjas. Seda, mida see t\u00e4hendab, vaatame natuke hiljem.<\/p>\n<p>Kui on tarvis \u00fchenduse seadeid muuta, m\u00e4\u00e4ra need nii nagu on n\u00e4idatud sinu operatsioonis\u00fcsteemile vastavas DBeaveri esimese k\u00e4ivitamise <a href=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/chapter\/tarkvara-installeerimine\/\">juhendis<\/a>.<\/p>\n<p>N\u00fc\u00fcd oled edukalt DBeaveri projekti failist importinud.<\/p>\n<h3>DBeaveri projektide eksportimine<\/h3>\n<p>Vaatame tuleviku tarbeks ka seda, kuidas projekte eksportida. Hetkel pole aga j\u00e4rgnevaid samme tarvis kaasa teha.<\/p>\n<p>Olemasoleva DBeaveri projekti eksportimiseks faili tuleb k\u00f5igepealt avada DBeaver. Seej\u00e4rel tuleb DBeaveris \u00fclevalt vasakult valida vaade <em>Projects <\/em>(mitte <em>Database Navigator<\/em>).<\/p>\n<p>J\u00e4rgmisena vali DBeaveri aknas \u00fclevalt men\u00fc\u00fcst <em>File<\/em> \u2192 <em>Export<\/em> nagu on n\u00e4idatud alloleval pildil.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-93\" src=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/1p-3.png\" alt=\"DBeaver'i projekti eksportimise esimene samm\" width=\"1026\" height=\"770\" srcset=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/1p-3.png 1026w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/1p-3-300x225.png 300w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/1p-3-1024x768.png 1024w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/1p-3-768x576.png 768w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/1p-3-65x49.png 65w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/1p-3-225x169.png 225w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/1p-3-350x263.png 350w\" sizes=\"auto, (max-width: 1026px) 100vw, 1026px\" \/><\/p>\n<p>Avanenud aknas kliki kaustale <em>DBeaver<\/em> ning seej\u00e4rel selle alamkaustale <em>Project<\/em>. L\u00f5puks kliki nupule <em>Next<\/em>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-94\" src=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/2p.png\" alt=\"DBeaver'i projekti eksportimise teine samm\" width=\"511\" height=\"543\" srcset=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/2p.png 511w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/2p-282x300.png 282w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/2p-65x69.png 65w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/2p-225x239.png 225w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/2p-350x372.png 350w\" sizes=\"auto, (max-width: 511px) 100vw, 511px\" \/><\/p>\n<p>J\u00e4rgmises vaates m\u00e4rgi eksporditav projekt valituks ning m\u00e4\u00e4ra eksporditavale failile meeldiv nimi (v\u00e4li <em>Output file<\/em>), n\u00e4iteks kujul <em>Netflix_Perekonnanimi_eksport<\/em> ja asukoht (v\u00e4li <em>Directory<\/em>). L\u00f5puks kliki nupule <em>Finish<\/em>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-898\" src=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/3p-2.png\" alt=\"DBeaver'i projekti eksportimise kolmas samm\" width=\"511\" height=\"543\" srcset=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/3p-2.png 511w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/3p-2-282x300.png 282w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/3p-2-65x69.png 65w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/3p-2-225x239.png 225w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2021\/03\/3p-2-350x372.png 350w\" sizes=\"auto, (max-width: 511px) 100vw, 511px\" \/><\/p>\n<p>N\u00fc\u00fcd oled edukalt DBeaveri projekti faili eksportinud.<\/p>\n<h2>Netflixi andmebaasi seadistamine ja uurimine<\/h2>\n<p>N\u00fc\u00fcdseks peaks Netflixi andmebaas olema imporditud, kuid j\u00e4\u00e4nud on veel teha m\u00f5ned seadistused.<\/p>\n<p>P\u00e4rast importimist tuleks imporditud projekt m\u00e4\u00e4rata vaikeprojektiks. Hetkeseisuga on vaikeprojektiks ilmselt <em>General<\/em>, seet\u00f5ttu on selle nimi ka paksus kirjas. Projekte saab m\u00e4\u00e4rata vaikeprojektiks <em>Projects<\/em>. Selleks tuleb teha parema klikk projekti nime peal ja valida <em>Set Active Project<\/em>.<\/p>\n<p>Seej\u00e4rel ava <em>Projects<\/em> vaates j\u00e4rjest imporditud projekti alamen\u00fc\u00fcsid kuni n\u00e4ed k\u00f5iki skeemasid (alamen\u00fc\u00fc <em>Schemas<\/em> all) ning m\u00e4\u00e4ra skeema <em>netflix_algne<\/em> vaikeskeemaks. Selleks tee parem klikk skeema nime peal ja vali <em>Set as default<\/em>. T\u00f5en\u00e4oliselt tuleb seda sammu korrata igal DBeaveri k\u00e4ivitamisel.<\/p>\n<p>Tulevaste importimise ja eksportimisega seotud probleemide v\u00e4ltimiseks on soovitatav skeema <em>netflix_algne<\/em> \u00fcmber nimetada kujule <em>netflix_perekonnanimi<\/em>. Selleks tee skeema <em>netflix_algne<\/em> peal parem klikk ja vali <em>Rename<\/em>, sisesta enda perekonnanimele vastav nimi ning vajuta <em>OK <\/em>ja seej\u00e4rel <em>Persist<\/em>.<\/p>\n<p>Segaduse v\u00e4ltimiseks kustuta siinkohal \u00e4ra algne projekt nimega <em>General<\/em>. Selleks tee projekti peal paremklikk ja vali <em>Delete<\/em>. Soovi korral v\u00f5ib projekti enne kustutamist harjutamise nimel ka faili eksportida.<\/p>\n<p>Tasub teada, et DBeaver ei luba vaikeprojekti kustutada. Seega, kui tekib probleeme projekti <em>General<\/em> kustutamisega, on see ilmselt siiani vaikeprojektiks j\u00e4\u00e4nud.<\/p>\n<p>N\u00fc\u00fcd olemegi Neftlixi andmebaasi DBeaveri projekti abil importinud ning seej\u00e4rel korrektselt \u00fcles seadnud.<\/p>\n<p>J\u00e4rgmine samm on tutvuda meie uue andmebaasiga, millega t\u00f6\u00f6tame mooduli l\u00f5puni. Selleks on DBeaveri abil soovitatav p\u00f5hjalikult uurida k\u00f5iki andmebaasis olevaid tabeleid, kasutades selleks <a href=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/chapter\/tarkvara-installimine-ja-naidisandmebaasi-loomine\/\">\u00fcleeelmises peat\u00fckis<\/a> \u00f5petatut.<\/p>\n<p>Uuri nii tabelites olevaid tunnuseid, nende andmet\u00fc\u00fcpe kui ka tabelis olevaid andmeid \u00fcldiselt. Proovi m\u00f5ista, mida iga tunnus t\u00e4hendab ning ka seda, milliseid andmeid see andmebaas \u00fcldse hoiustab. Mida paremini sa andmebaasi olemust m\u00f5istad, seda lihtsam on hiljem p\u00e4ringuid looma hakata.<\/p>\n<p>Kui j\u00e4\u00e4d h\u00e4tta andmebaasi \u00fclesehituse, andmet\u00fc\u00fcpide jm m\u00f5istmisega, vaata \u00fcle erinevaid <a href=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/part\/main-body\/\">eelmise mooduli<\/a> peat\u00fckke.<\/p>\n<div id=\"h5p-5\">\n<div class=\"h5p-iframe-wrapper\"><iframe id=\"h5p-iframe-5\" class=\"h5p-iframe\" data-content-id=\"5\" style=\"height:1px\" src=\"about:blank\" frameBorder=\"0\" scrolling=\"no\" title=\"AP_14_kontrollk\u00fcsimus_1\"><\/iframe><\/div>\n<\/div>\n<h2>P\u00e4ringute piiramine<\/h2>\n<p>J\u00e4tkame n\u00fc\u00fcd p\u00e4ringute osaga ning vaatame t\u00e4psemalt, kuidas kasutada piiranguid keerukamate p\u00e4ringute loomisel.<\/p>\n<p>P\u00e4ringuid on vaja piirata selleks, et kontrollida p\u00e4ringute tulemustesse j\u00f5udvate kirjete arvu. Kui tabelis v\u00f5ib algselt olla mitu tuhat kirjet, on p\u00e4ringute piiramise abil v\u00f5imalik tulemusi kitsendada nii, et alles j\u00e4\u00e4b vaid \u00fcksainus huvipakkuv kirje.<\/p>\n<p>Tavap\u00e4raste p\u00e4ringute piiramiseks kasutatakse SQL-s m\u00e4rks\u00f5na <strong><code><span style=\"color: #970000\">WHERE<\/span><\/code><\/strong>. Hilisemates peat\u00fckkides vaatame ka \u00fcht teist m\u00e4rks\u00f5na, mida kasutatakse erip\u00e4rasemate p\u00e4ringute piiramiseks.<\/p>\n<p>M\u00e4rks\u00f5na <strong><code><span style=\"color: #970000\">WHERE<\/span><\/code><\/strong> ja sellele j\u00e4rgnev piirangut t\u00e4psustav osa k\u00e4ib seni\u00f5pitud p\u00e4ringulause kuju l\u00f5ppu.<\/p>\n<p>N\u00e4iteks, kui soovime leida k\u00f5igi tabelis Riigid olevate riikide k\u00f5iki andmeid, kasutaksime selleks j\u00e4rgmist p\u00e4ringut:<\/p>\n<ul>\n<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> * <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> riigid<span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\n<\/ul>\n<p>Selleks, et n\u00e4ha andmeid vaid Soome kohta, kasutaksime aga m\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>WHERE<\/strong><\/span><\/code> eelmisele p\u00e4ringule lisaks j\u00e4rgnevalt:<\/p>\n<ul>\n<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> * <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> riigid <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> nimi = <span style=\"color: #008000\">'Finland'<\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\n<\/ul>\n<p>Katseta ka ise eelnevat kahte p\u00e4ringut, v\u00f5rdle nende tulemusi ning proovi piiramist ka teiste riikide nimede alusel.<\/p>\n<p>Meeldetuletuseks, jutum\u00e4rkide paari asemel kasutatakse siinkohal alati \u00fclakomade paari. Kuna jutum\u00e4rkide ekslik kasutamine v\u00f5ib anda kohati arusaamatuid veateateid, on seda kasulik meeles pidada.<\/p>\n<p><code><span style=\"color: #970000\"><strong>WHERE<\/strong><\/span><\/code> on v\u00f5imas m\u00e4rks\u00f5na selle poolest, et sellele j\u00e4rgnevaid piiranguid saab m\u00e4\u00e4rata v\u00e4ga paljudel erinevatel alustel. Eespool n\u00e4idatud v\u00f5rdusm\u00e4rk ei ole ammugi ainus piiramisel kasutatav operaator. N\u00e4iteks, v\u00f5imalik on kasutada ka matemaatikast tuttavaid operaatoreid <code>&lt;<\/code>, <code>&gt;<\/code>, <code>&lt;=<\/code>, <code>&gt;=<\/code> ja <code>&lt;&gt;<\/code> ehk <code>!=<\/code> (mitte v\u00f5rdne).<\/p>\n<p>Nimetatud operaatoreid saab kasutada nii s\u00f5nede kui ka arvude v\u00f5rdlemisel. Kui neid kasutada arvuliste v\u00e4\u00e4rtustega, siis \u00fclakomasid arvude \u00fcmber ei panda.<\/p>\n<p>N\u00e4iteks j\u00e4rgmine p\u00e4ring piirab tulemusi riikide pindala ehk arvulise v\u00e4\u00e4rtuse alusel:<\/p>\n<ul>\n<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> * <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> riigid <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> pindala &lt; <span style=\"color: #0000ff\">10000<\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\n<\/ul>\n<div id=\"h5p-6\">\n<div class=\"h5p-iframe-wrapper\"><iframe id=\"h5p-iframe-6\" class=\"h5p-iframe\" data-content-id=\"6\" style=\"height:1px\" src=\"about:blank\" frameBorder=\"0\" scrolling=\"no\" title=\"AP_14_kontrollk\u00fcsimus_2\"><\/iframe><\/div>\n<\/div>\n<p>M\u00e4rks\u00f5nale <code><span style=\"color: #970000\"><strong>WHERE<\/strong><\/span><\/code> j\u00e4rgnevat avaldist saab ka loogiliselt vastupidiseks p\u00f6\u00f6rata, kirjutades <code><span style=\"color: #970000\"><strong>WHERE<\/strong><\/span><\/code> asemel <code><span style=\"color: #970000\"><strong>WHERE NOT<\/strong><\/span><\/code>. Kuigi \u00fcldjuhul on samav\u00e4\u00e4rse tulemuseni lihtne j\u00f5uda kirjutades n\u00e4iteks operaatori <code>=<\/code> asemel <code>!=<\/code>, v\u00f5ib m\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>NOT<\/strong><\/span><\/code> kasutamine olla m\u00f5nes olukorras isegi loomulikum v\u00f5i ka kiirem, kui piiranguid on mitu.<\/p>\n<div id=\"h5p-7\">\n<div class=\"h5p-iframe-wrapper\"><iframe id=\"h5p-iframe-7\" class=\"h5p-iframe\" data-content-id=\"7\" style=\"height:1px\" src=\"about:blank\" frameBorder=\"0\" scrolling=\"no\" title=\"AP_14_kontrollk\u00fcsimus_3\"><\/iframe><\/div>\n<\/div>\n<p>M\u00e4rks\u00f5nale <code><span style=\"color: #970000\"><strong>WHERE<\/strong><\/span><\/code> v\u00f5ib j\u00e4rgneda ka mitu avaldist, mida eraldatakse omavahel m\u00e4rks\u00f5nadega <code><span style=\"color: #970000\"><strong>AND<\/strong><\/span><\/code> v\u00f5i <code><span style=\"color: #970000\"><strong>OR<\/strong><\/span><\/code>. M\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>AND<\/strong><\/span><\/code> t\u00e4histab seda, et m\u00f5lemal pool m\u00e4rks\u00f5na olevad avaldised peavad olema t\u00f5esed. M\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>OR<\/strong><\/span><\/code> t\u00e4histab aga seda, et v\u00e4hemalt \u00fcks m\u00e4rks\u00f5na vasakul v\u00f5i paremal poolel olevatest avaldistest peab olema t\u00f5ene. M\u00f5lemat m\u00e4rks\u00f5na v\u00f5ib kasutada ka rohkem kui \u00fche korra.<\/p>\n<p>N\u00e4iteks j\u00e4rgneva p\u00e4ringu tulemuses on k\u00f5igi riikide nimed, milles on \u00fcheaegselt rahvastikuarv \u00fcle 4 miljoni, milles internetti kasutab alla 50% elanikkonnast ning mille pindala on \u00fcle 1000000 km<sup>2<\/sup>:<\/p>\n<ul>\n<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> * <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> riigid <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> rahvastikuarv &gt; <span style=\"color: #0000ff\">4000000<\/span> <span style=\"color: #970000\"><strong>AND<\/strong><\/span> interneti_kasutajad &lt; <span style=\"color: #0000ff\">50<\/span> <span style=\"color: #970000\"><strong>AND<\/strong><\/span> pindala &gt;= <span style=\"color: #0000ff\">1000000<\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\n<\/ul>\n<div id=\"h5p-8\">\n<div class=\"h5p-iframe-wrapper\"><iframe id=\"h5p-iframe-8\" class=\"h5p-iframe\" data-content-id=\"8\" style=\"height:1px\" src=\"about:blank\" frameBorder=\"0\" scrolling=\"no\" title=\"AP_14_kontrollk\u00fcsimus_4\"><\/iframe><\/div>\n<\/div>\n<p>M\u00e4rks\u00f5na <code><span style=\"color: #800000\"><strong>WHERE<\/strong><\/span><\/code> j\u00e4rel on v\u00f5imalik kasutada ka p\u00e4ringulausete kirjutamist lihtsustavaid abim\u00e4rks\u00f5nu nagu <code><span style=\"color: #800000\"><strong>IS<\/strong><\/span><\/code>, <code><span style=\"color: #800000\"><strong>IN<\/strong><\/span><\/code> ja <code><span style=\"color: #800000\"><strong>BETWEEN<\/strong><\/span><\/code>.<\/p>\n<p>M\u00e4rks\u00f5na <code><span style=\"color: #800000\"><strong>IS<\/strong><\/span><\/code> ja selle vastandit <code><span style=\"color: #800000\"><strong>IS NOT<\/strong><\/span><\/code> on v\u00f5imalik kasutada selleks, et leida, kus on v\u00f5i just ei ole tunnuse v\u00e4\u00e4rtused puudu. N\u00e4iteks j\u00e4rgneva p\u00e4ringu tulemuses on k\u00f5igi selliste teoste pealkirjad, mille loomise riik on teadmata:<\/p>\n<ul>\n<li><code><span style=\"color: #800000\"><strong>SELECT<\/strong><\/span> pealkiri <span style=\"color: #800000\"><strong>FROM<\/strong><\/span> teosed <span style=\"color: #800000\"><strong>WHERE<\/strong><\/span> riigi_id <span style=\"color: #800000\"><strong>IS NULL<\/strong><\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\n<\/ul>\n<p>Kui \u00fclemises p\u00e4ringus kirjutada <code><span style=\"color: #970000\"><strong>IS<\/strong><\/span><\/code> asemel <code><span style=\"color: #970000\"><strong>IS NOT<\/strong><\/span><\/code>, saaksime vastupidiselt k\u00f5igi selliste teoste pealkirjad, mille loomise riik on teada.<\/p>\n<p>M\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>BETWEEN<\/strong><\/span><\/code> saab kasutada selleks, kui tahta piirata mingit tunnust kahe v\u00e4\u00e4rtuse vahel. N\u00e4iteks on kaks j\u00e4rgmist p\u00e4ringulauset sisult v\u00f5rdsed, kuid m\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>BETWEEN<\/strong><\/span><\/code> kasutav lause on l\u00fchem ning lihtsamini loetav:<\/p>\n<ul>\n<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> pealkiri, valjalaske_aasta <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> teosed <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> valjalaske_aasta <span style=\"color: #970000\"><strong>BETWEEN<\/strong><\/span> <span style=\"color: #0000ff\">2016<\/span> <span style=\"color: #970000\"><strong>AND<\/strong><\/span> <span style=\"color: #0000ff\">2018<\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\n<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> pealkiri, valjalaske_aasta <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> teosed <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> valjalaske_aasta &gt;= <span style=\"color: #0000ff\">2016<\/span> <span style=\"color: #970000\"><strong>AND<\/strong><\/span> valjalaske_aasta &lt;= <span style=\"color: #0000ff\">2018<\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\n<\/ul>\n<p>Pane t\u00e4hele, et <code><span style=\"color: #970000\"><strong>BETWEEN<\/strong><\/span> <span style=\"color: #0000ff\">2016<\/span> <span style=\"color: #970000\"><strong>AND<\/strong><\/span> <span style=\"color: #0000ff\">2018<\/span><\/code> t\u00e4hendab sisuliselt matemaatikast tuttavat l\u00f5iku [2016, 2018], mitte aga vahemikku (2016, 2018).<\/p>\n<p>M\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>IN<\/strong><\/span><\/code> saab kasutada selleks, et vaadelda, kas tunnuse v\u00e4\u00e4rtus sisaldub etteantavas listis. Ka j\u00e4rgmised kaks p\u00e4ringulauset on sisult v\u00f5rdsed, kuid m\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>IN<\/strong><\/span><\/code> kasutav lause on taaskord l\u00fchem ning lihtsamini loetav:<\/p>\n<ul>\n<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> pealkiri <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> teosed <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> riigi_id <span style=\"color: #970000\"><strong>IN<\/strong><\/span> (<span style=\"color: #0000ff\">22<\/span>, <span style=\"color: #0000ff\">73<\/span>, <span style=\"color: #0000ff\">74<\/span>)<span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\n<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> pealkiri <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> teosed <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> riigi_id = <span style=\"color: #0000ff\">22<\/span> <span style=\"color: #970000\"><strong>OR<\/strong><\/span> riigi_id = <span style=\"color: #0000ff\">73<\/span> <span style=\"color: #970000\"><strong>OR<\/strong><\/span> riigi_id = <span style=\"color: #0000ff\">74<\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\n<\/ul>\n<div id=\"h5p-9\">\n<div class=\"h5p-iframe-wrapper\"><iframe id=\"h5p-iframe-9\" class=\"h5p-iframe\" data-content-id=\"9\" style=\"height:1px\" src=\"about:blank\" frameBorder=\"0\" scrolling=\"no\" title=\"AP_14_kontrollk\u00fcsimus_5\"><\/iframe><\/div>\n<\/div>\n<p>Tasub teada, et m\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>NOT<\/strong><\/span><\/code> on v\u00f5imalik ka m\u00e4rks\u00f5nadega <strong><code><span style=\"color: #970000\">BETWEEN<\/span><\/code><\/strong> ja <code><span style=\"color: #970000\"><strong>IN<\/strong><\/span><\/code> kombineerida, kirjutades vastavalt <code><span style=\"color: #970000\"><strong>NOT BETWEEN<\/strong><\/span><\/code> ja <code><span style=\"color: #970000\"><strong>NOT IN<\/strong><\/span><\/code>.<\/p>\n<p>K\u00f5ige paindlikum ja mitmek\u00fclgsem m\u00e4rks\u00f5naga <code><span style=\"color: #970000\"><strong>WHERE<\/strong><\/span><\/code> kokku k\u00e4iv m\u00e4rks\u00f5na on <code><span style=\"color: #970000\"><strong>LIKE<\/strong><\/span><\/code>. Lihtsalt \u00f6eldes on selle abil v\u00f5imalik kontrollida tunnuste v\u00e4\u00e4rtuste sarnasust sellega, mida <strong><code><span style=\"color: #970000\">LIKE<\/span><\/code><\/strong> j\u00e4rel t\u00e4psustatakse.<\/p>\n<p>Jooksuta j\u00e4rgmiseid p\u00e4ringuid, v\u00f5rdle nende tulemusi ning m\u00f5tiskle, kuidas ja miks need nii t\u00f6\u00f6tavad:<\/p>\n<ul>\n<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> nimi <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> isikud <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> nimi <span style=\"color: #970000\"><strong>LIKE<\/strong><\/span> <span style=\"color: #008000\">'Kim%'<span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/span><\/code><\/li>\n<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> nimi <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> isikud <span style=\"color: #970000\"><strong>WHERE<\/strong> <\/span>nimi <span style=\"color: #970000\"><strong>LIKE<\/strong><\/span> <span style=\"color: #008000\">'%Kim'<\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\n<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> nimi <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> isikud <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> nimi <span style=\"color: #970000\"><strong>LIKE<\/strong><\/span> <span style=\"color: #008000\">'%Kim%'<\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\n<\/ul>\n<div id=\"h5p-10\">\n<div class=\"h5p-iframe-wrapper\"><iframe id=\"h5p-iframe-10\" class=\"h5p-iframe\" data-content-id=\"10\" style=\"height:1px\" src=\"about:blank\" frameBorder=\"0\" scrolling=\"no\" title=\"AP_14_kontrollk\u00fcsimus_6\"><\/iframe><\/div>\n<\/div>\n<p>Jooksuta j\u00e4rgmist p\u00e4ringut (p\u00e4rast Kim&#8217;i on 6 alakriipsu) ja m\u00f5tiskle, kuidas see t\u00f6\u00f6tab ning mille poolest see eelnevast kolmest p\u00e4ringust erineb:<\/p>\n<ul>\n<li><code><span style=\"color: #970000\"><strong>SELECT<\/strong><\/span> nimi <span style=\"color: #970000\"><strong>FROM<\/strong><\/span> isikud <span style=\"color: #970000\"><strong>WHERE<\/strong><\/span> nimi <span style=\"color: #970000\"><strong>LIKE<\/strong><\/span> <span style=\"color: #008000\">'Kim_______'<\/span><span style=\"color: #ff0000\"><strong>;<\/strong><\/span><\/code><\/li>\n<\/ul>\n<div id=\"h5p-11\">\n<div class=\"h5p-iframe-wrapper\"><iframe id=\"h5p-iframe-11\" class=\"h5p-iframe\" data-content-id=\"11\" style=\"height:1px\" src=\"about:blank\" frameBorder=\"0\" scrolling=\"no\" title=\"AP_14_kontrollk\u00fcsimus_7\"><\/iframe><\/div>\n<\/div>\n<p>Protsendi m\u00e4rke ja alakriipse on p\u00e4rast m\u00e4rks\u00f5na <code><span style=\"color: #970000\"><strong>LIKE<\/strong><\/span><\/code> esinevas s\u00f5nes v\u00f5imalik ka kombineerida.<\/p>\n<p>N\u00fc\u00fcd oleme \u00f5ppinud, kuidas Netflixi andmebaasi DBeaveri projekti abil importida ning ka seda, kuidas suures andmebaasis p\u00e4ringuid teha ning neid piirata. Seega saame hakata \u00f5ppima, kuidas kasutada aritmeetilisi tehteid ja funktsioone veeruavaldistena, mille k\u00e4igus kasutame k\u00f5ike seni \u00f5pitut.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"author":32,"menu_order":4,"template":"","meta":{"pb_show_title":"on","pb_short_title":"","pb_subtitle":"","pb_authors":[],"pb_section_license":""},"chapter-type":[],"contributor":[],"license":[],"class_list":["post-39","chapter","type-chapter","status-publish","hentry"],"part":31,"_links":{"self":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/pressbooks\/v2\/chapters\/39","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/pressbooks\/v2\/chapters"}],"about":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/wp\/v2\/types\/chapter"}],"author":[{"embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/wp\/v2\/users\/32"}],"version-history":[{"count":86,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/pressbooks\/v2\/chapters\/39\/revisions"}],"predecessor-version":[{"id":1332,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/pressbooks\/v2\/chapters\/39\/revisions\/1332"}],"part":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/pressbooks\/v2\/parts\/31"}],"metadata":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/pressbooks\/v2\/chapters\/39\/metadata\/"}],"wp:attachment":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/wp\/v2\/media?parent=39"}],"wp:term":[{"taxonomy":"chapter-type","embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/pressbooks\/v2\/chapter-type?post=39"},{"taxonomy":"contributor","embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/wp\/v2\/contributor?post=39"},{"taxonomy":"license","embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/wp\/v2\/license?post=39"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}