JavaRush /Java Blog /Random-TK /Maglumatlar bazalaryny we SQL dilini seljerýäris. (4-nji ...

Maglumatlar bazalaryny we SQL dilini seljerýäris. (4-nji bölüm - öý işini barlamak) - "A-dan Z-a çenli Java taslamasy"

Toparda çap edildi
Java taslamasyny döretmek baradaky seriýadan bir makala (beýleki materiallara baglanyşyk ahyrynda). Maksady esasy tehnologiýalary seljermek, netijesi telegramma bot ýazmak. Öňki makalalar we maglumat bazalarynda öý işiniň derňewi: 1 , 2 , 3 . Sabyr we çydamlylygy bolanlara, dördünji makala üçin meniň bilen gidenleriň hemmesine - gowy iş. Aýdyşlary ýaly, ýörän adam ýoly özleşdirip biler. Bu hepde maglumatlar bazalary baradaky iň soňky makala çap ediler, onda gatnaşyklaryň we goşulmagyň görnüşleri barada gürleşeris . Emma täze maglumatlar bilen iş salyşmazdan ozal, öý işimizi barlap göreliň ... Özümi mugallym ýaly duýdum. Maňa gaharlanmaň: Meniň pedagogiki bilimim ýok, elbetde. Geçen hepde uzakdan dolandyryşyň jikme-jik barlagy materialyň arslan paýyny alandygy sebäpli, öý işimiň derňewini we täze materialyň synyny iki bölege bölmek kararyna geldim."Java-dan A-dan Z" taslamasy: maglumat bazalaryny we SQL dilini seljerýäris.  4-nji bölüm - öý işini barlamak - 1

Aslynda, öý işiniň derňewi

PD bilen meşgullanýan we bu hakda gürleýän adamlaryň bardygyna hökman begenýärin. Bu gaty gowy! Bilimi jemlemän okamagyň hiç ýere gitmejekdigine mümkin boldugyça ynanýaryn. Şonuň üçin eden ýa-da etjek bolanlaryň hemmesi - hormat. Wezipeleriň şertlerini ýatladýaryn:
  1. HAVING operatoryna düşüniň we mysalymyzdan tablisalar üçin mysal soragyny ýazyň. Has düşnükli etmek üçin käbir meýdanlary ýa-da has köp bahalary goşmaly bolsaňyz, goşuň. Kimdir biri islese, mysal çözgüdiňizi teswirlere ýazyň - şonuň üçin wagtym bar bolsa barlap bilerin.
  2. UI arkaly maglumat bazasy bilen işlemek üçin MySQL Workbench guruň. Konsoldan işlemek üçin eýýäm ýeterlik tejribe bar diýip pikir edýärin. Maglumat bazasyna birikdiriň. Maglumat bazasy bilen işlemek üçin başga bir zat ulansaňyz, bu ýumuşdan geçip bilersiňiz. Bu ýerde we mundan beýläk diňe MySQL Workbench ulanaryn.
  3. Maglumatlarymyzy ulanyp almak üçin haýyşlary ýazyň:
    1. iň kiçi / iň köp ilatly ýurt;
    2. ýurtda ýaşaýanlaryň ortaça sany;
    3. atlary “a” bilen gutarýan ýurtlarda ýaşaýanlaryň ortaça sany;
    4. dört milliondan gowrak ilaty bolan ýurtlaryň sany;
    5. ilat sanyny azaltmak bilen ýurtlary tertiplemek;
    6. ýurtlary tebigy tertipde tertipläň.

HAVING hakda gürleşeliň

“Operator” -y bilmek, SQL problemalary boljak birden köp söhbetdeşlik geçirmäge kömek edip biler. Şonuň üçin muňa düşünmek gaty möhümdir. Diňe şeýle bolýar, jemlemek funksiýalaryny (SUM, MIN, MAX, AVG) ulanyp bilmersiňiz. Mundan başga-da, HAVING toparlanan meýdanlar üçin ulanylýar. Bu näme many berýär? Mysal üçin, şäherlerde ortaça ilatyň sany 50,000-den gowrak bolan ýurtlary almak islesek, HAVING ulanmazdan edip bilmeris. Muňa düşünşim ýaly, bu WHERE jümlesi ýerine ýetirilenden soň ýüze çykýar we soňundan hasaplanjak jemleme bahalaryny goşmak mümkin däl. Şu wagta çenli pikirlerim düşünişmäge kän bir goşant goşmasa-da, muny hakykat hökmünde kabul edip, özi bilen gidip bilersiňiz. Programmirlemekde köplenç bir zat bir pursat düşnüksiz bolsa, beýniniň entek siňdirilmändigini aňladyp biler. Bu pikir bilen uklaň we ertesi gün hemme zat düşnükli bolar.

MySQL Workbench gurmak

Bu ýerde we soraglar üçin Workbench ulanaryn. Maglumatlar bazasyna gurnamak we birikdirmek üçin nämä gerekdigini görkezerin. Bu "Oracle" -dan öndürilen önüm, şonuň üçin diňe web sahypasyna girip, isleýän wersiýaňyzy we operasiýa ulgamyňyzy saýlamaly. Munuň üçin şu baglanyşyga eýeriň : "Java-проект от А до Я": разбираем базы данных и язык SQL. Часть 4 — проверка домашнего задания - 2Bu ýerde size zerur operasiýa ulgamyny saýlap bilersiňiz. Downloadükle düwmesine basyň , ýöne göçürip almagyň ýerine bu penjiräni göreris: "Java-проект от А до Я": разбираем базы данных и язык SQL. Часть 4 — проверка домашнего задания - 3lostitirilmäň, sag boluň diýlen düwmäni gözläň, göçürip alyp başlaň we göçürip başlar. Näme üçin beýle edýärler? Morehtimal, has köp adamyň hasaba alynmagy üçin bu biziň üçin möhüm däl. Üstünlikli göçürip alanyňyzdan soň, gurnama faýly işlediň. “MacOS” -da şeýle görünýär: "Java-проект от А до Я": разбираем базы данных и язык SQL. Часть 4 — проверка домашнего задания - 4Diňe nyşany süýräň we hut şol, gurnama tamamlandy. MySQL-yň özi gurmak ýaly kyn däl, şeýlemi? Ora-da biz indi öwrenişip, has tejribeli bolduk;) Bu meseläniň ikinji bölümi, maglumatlar bazamyza baglanyşyk döretmekdir. Munuň üçin näme gerek? MySQL birikmeleriniň gapdalyndaky goşmaça bellige basyň: Peýda "Java-проект от А до Я": разбираем базы данных и язык SQL. Часть 4 — проверка домашнего задания - 5bolan penjirede zerur maglumatlary giriziň:
  • Baglanyşygyň ady - baglanyşygymyzyň ady. Soňra tanamakda kynçylyk çekmezlik üçin mümkin boldugyça düşnükli atlary ýazyň. Bu baglanyşyga JRTB_DB adyny berýärin ;
  • Hostname - eýýäm ýerli 127.0.0.1 (aka localhost) hökmünde kesgitlener . Biziň ýagdaýymyzda hiç zat üýtgedilmeli däl, sebäbi maglumatlar bazasy kompýuterde gurnalan, ýöne maglumatlar bazasy başga bir ýerde bolsa, öý eýesi (maglumatlar bazasy işleýän maşynyň ip) degişlilikde üýtgedilmeli;
  • Ulanyjy ady - zerur bolsa ulanyjyny hem görkezip bilersiňiz. Bu açarda hiç zat goşmadyk bolsaňyz, ony üýtgetmän goýuň;
  • Parol - Keychain-daky Dükana basyň we özüňiz üçin kesgitlän parolyňyzy kesgitläň. Everythinghli zady ýönekeý - kök goýdum .
Baglanyşygyň işlejekdigini ýa-da ýokdugyny barlamak üçin Synag birikmesine basyň : "Java-проект от А до Я": разбираем базы данных и язык SQL. Часть 4 — проверка домашнего задания - 6everythinghli zat dogry edilen bolsa, netije uzak bolmaz: "Java-проект от А до Я": разбираем базы данных и язык SQL. Часть 4 — проверка домашнего задания - 7Indi maglumatlar bazasynda ýatda saklanan birikmämiz bar, birikme döretmek we doldurmak zerurlygy bolmaz her gezek adynda we parolynda. Bu bagt şeýle bolar: "Java-проект от А до Я": разбираем базы данных и язык SQL. Часть 4 — проверка домашнего задания - 8Täze döredilen birikmä girýäris we haýyş penjiresini görýäris. Hemme zadyň dogrudygyna göz ýetirmek üçin geliň, maglumat bazalarynyň sanawyny barlap göreliň, özümize gidiň we şäherler barada ähli maglumatlary alalyň: "Java-проект от А до Я": разбираем базы данных и язык SQL. Часть 4 — проверка домашнего задания - 9Ine, bize zerur zatlar üçin karta blançasy berilýär. Birinji bölüm, girizýän skriptimiz üçin jogapkärdir. Ondan soň, Netijeler Gridinde , skriptdäki iň soňky amalyň netijesini görýäris. Hereketiň netijesi amallaryň sanawyny we netijesini görkezýär. Örän peýdaly zat, size aýdasym gelýär: onuň kömegi bilen käbir skriptleriň ýerine ýetiriş tizligine gözegçilik edip bilersiňiz. Näme üçin bu möhüm? Bir programmada meseläniň ýerine ýetiriliş tizliginde iň köp ýaýran meseleleriň biri, maglumatlar bazasyndaky talaplaryň ýerine ýetiriliş tizligi. Bu ýerde olary el bilen çalt we amatly barlap bilersiňiz.

Zerur haýyşlary ýazýarys

Diňe 7 haýyşymyz bar, gideli!

  1. Iň köp ilatly ýurdy alyň. Bu ýerde mekirlik bilen gidip, birnäçe ugur alyp bilersiňiz:

  • Tableurduň tablisasyna görä

Soňra diňe soragymyzy ilat boýunça tertipläp, diňe bir ýazgy almaly. Munuň üçin skriptiň soňuna LIMIT operatory goşmaly we zerur mukdary görkezmeli: $ SELECT * Ilatdan DESC LIMIT 1 tarapyndan ýurtdan sargyt;"Java-проект от А до Я": разбираем базы данных и язык SQL. Часть 4 — проверка домашнего задания - 10

  • Şäher tablisasyna görä

Bu ýerde hemme zat has gyzykly, sebäbi haýyş has çylşyrymly, ýöne has gyzykly bolar. Goşulmak barada henizem pikirimiz ýoklygy sebäpli, diňe ýurt ID-ni alyp bileris: $ SELECT country_id, SUM (ilat) şäher GROUP-dan ýurt_id SUM (ilat) DESC LIMIT 1; "Java-проект от А до Я": разбираем базы данных и язык SQL. Часть 4 — проверка домашнего задания - 11Bu ýerde ajaýyp bir zat etdik - her ýurtdaky belli şäherleriň ilatynyň jemini ýygnadyk, bu mukdar boýunça tertiplenip, birinji elementi aldyk. Gowy? Men begenýärin: D Ondan soň derrew talap gurujy ýaly duýarsyňyz ... (uzak wagtlap däl)

  1. Iň kiçi ýurdy alyň. Bu ýerde mekirlik bilen gidip, birnäçe ugur alyp bilersiňiz

Bu ýagdaýda hemme zat birmeňzeş bolar. Onlyeke-täk tapawut, sortlaşdyrmagyň tersine boljakdygy - hemmesi. Şonuň üçin haýyşlary ýazýaryn:

  • Şäher tablisasyna görä

$ SELECT country_id, SUM (ilat) şäher GROUP-dan ýurt_id SUM (ilat) Çäklendirme 1;

  • Tableurduň tablisasyna görä

$ Ilatyň Çäklendirmesi 1 Netijäni özüňiz görüň!

  1. Inurtda ýaşaýanlaryň ortaça sany

Ynha, tehniki spesifikasiýa nädip menejeriň ýazan ýaly takyk däl ... Näme üçin men muny karar berdim? Sebäbi haýsy tablisada işlemelidigi belli däl. Emma bu adaty zat: hemme zat derrew düşnükli we düşnükli boljak meseleler ýok. Şonuň üçin tabşyryklary üns bilen okamaly we soraglaryňyz bar bolsa derrew soraň! Dogry, bellik. Maglumatlar bazasyndaky maglumatlarymyzy göz öňünde tutup, şäherlerden alnan maglumatlary ulanyp gözläris. Munuň üçin aşakdaky soragy ýazyň: $ SELECT country_id, AVG (ilat) şäher GROUP BY country_id; "Java-проект от А до Я": разбираем базы данных и язык SQL. Часть 4 — проверка домашнего задания - 12Bu ýerde ýönekeý: AVG funksiýasyny ulanýarys we şäher ýazgylarymyzy ýurt boýunça toparlaýarys.

  1. Atlary “a” bilen gutarýan ýurtlarda ýaşaýanlaryň ortaça sany;

Isleg boýunça bu ýerde azajyk üýtgeşiklik bolar. Toparlamazdan ozal atlar boýunça süzgüç goşmaly. Bu makalany çap etmezden ozal, ähli okuwçylar ýaly öý işimi edýärin we bu meseläniň goşulmazdan çözülip bilinmejekdigine düşünýärin. Näme üçin? Sebäbi ýurt ID-den başga-da onuň adyny almaly. Iki ýazgyny bir ýazga goşmazdan edip bolmaz. Şonuň üçin bu işi ýerine ýetirerin, elbetde, ýöne bu meniň jambam ...))) Haýyşda LIKE ulanyp bir mesele tapmak isledim ...) $ SELECT ci.country_id, AVG (ci.population ) Şäherden INNER JOIN ýurt co ON ci.country_id = co.id WHERE co.name "% a" GROUP BY country_id; "Java-проект от А до Я": разбираем базы данных и язык SQL. Часть 4 — проверка домашнего задания - 13Bu ýerde näme boldy? Ilki bilen, daşary ýurt açary ýurt_idini ulanyp, şäher atlary we ýurt tablisalaryndaky ýazgylara goşuldyk, ýurt atlary bilen süzülip, ​​“a” bilen gutardy we diňe ýurt_id tarapyndan toparlandy.

  1. Ilaty dört milliondan köp bolan ýurtlaryň sany

Bu ýerde diňe COUNT funksiýasyny ulanmaly we ilata süzgüç goşmaly: $ SELECT COUNT (*) WHERE ilaty> 4000000; Netijede, şeýle 3 ýurduň bardygyny bilýäris. Bu dogrymy? Hawa, bu ädimden diňe Moldowa geçmeýär.

  1. Ilat sanyny azaltmak bilen ýurtlary tertipläň

Munuň üçin eýýäm bilýän ORDER BY operatorymyzy ulanmalydyrys. Defaultöne ýadyňyzdan çykarmaň, tertipleşdirme tebigy tertipde. Sanlar üçin bu ýokarlanýan tertipde tertiplenendigini, setirler üçin bolsa birinji harplardan başlap tertiplenendigini aňladýar. Eger aşak düşýän görnüş gerek bolsa, bize tebigy görnüşiniň tersi gerek: $ SELECT * countryurtdan sargyt Ilat tarapyndan DESC;"Java-проект от А до Я": разбираем базы данных и язык SQL. Часть 4 — проверка домашнего задания - 14

  1. Countriesurtlary tebigy tertipde tertipläň

Tebigy tertipiň nämedigini bilmek şu ýerde peýdaly bolar. Dymmaklyk bolany üçin, bu biziň üçin tort bölegi: $ SELECT * countryurtdan sargyt adyndan;"Java-проект от А до Я": разбираем базы данных и язык SQL. Часть 4 — проверка домашнего задания - 15

Çykyşyň ýerine

Öý işiniň çözgüdiniň ululygy şeýle bolýar, şonuň üçinem kadadan çykarys: Bu makalany çek bilen neşir edýärin we anna güni baglanyşyklar we birikmeler bilen täze material çap ederin. Hemmäňize okanyňyz üçin sag boluň. Juma çenli!

Tapgyryň ähli materiallarynyň sanawy bu makalanyň başynda.

Teswirler
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION