Развој база података Интернет ресурсапрактично се не разликује од стандардних база података развијених у систему МС СКЛ СЕРВЕР. По правилу се за такве ресурсе користи језик МИ СКЛ, мада се може применити и на развој стандардних софтверских производа за локалну употребу. Али овај чланак није о томе.
Често када радите са базама података у свакој одјезика, задатак је направити узорак података за излаз у разне извештаје, графиконе итд. По правилу, приликом примене ове врсте задатака, морате користити не једну, већ неколико табела, комбинујући их у један упит, што знатно компликује његов дизајн. У овом случају потребно је узети у обзир како ће се подаци приказивати, како ће се табеле „извлачити“ и који ће резултат бити најприхватљивији за програмера. Једна од стандардних МиСКЛ језичких конструкција - Јоин се користи за решавање таквих проблема.
Језици за развој базе података, без обзира на свеово је језик, за основу су узете стандардне речи из речника на енглеском језику (зато ће вам, под условом да знате енглески језик, бити много лакше радити са табелама). Да би се применила веза табела у избору, узима се иста реч - Придружи се. У програмском језику базе података користи се Ми СКЛ. Превод ове службене речи је потпуно исти као у самом језику - „унија“.
Тумачење конструкције МиСКЛ - Придружите се ибило који од њих биће потпуно исти. Ако дешифрујемо сврху структуре, односно шему њеног деловања, добићемо следеће значење: структуре ће омогућити прикупљање потребних поља из различитих табела или угнежђених упита у један избор.
Ако програмер треба да прикупи узорак однеколико табела и он зна која су кључна поља у њима и какви су подаци потребни за извештај, а затим можете да користите једну од основних конструкција спајања да бисте постигли жељени резултат. Постоје четири основне конструкције (за спајање столова):
У зависности од задатог задатка, сваки од стандардних дизајна ће дати различите резултате, што ће вам омогућити да у кратком времену добијете извештаје о различитим параметрима.
Пре почетка, на пример, разматрањамеханизме за рад са конструкцијама за обједињавање података, вреди припремити неколико табела са којима ћемо радити у будућности. Ово ће помоћи да визуелно прикажете све принципе рада оператора, поред тога, на овај начин почетницима је лакше да науче све основе програмских табела.
Прва табела ће описати неке од предмета са којима се човек непрестано сусреће током свог живота.
У другој табели ћемо описати нека својства објеката из прве табеле како бисте убудуће могли да радите са њима.
Генерално, две табеле ће бити довољне да пример илуструју њихов рад. Сада можете започети практично испитивање наших дизајна.
Када користите МиСКЛ конструкцију - Придружите се Инеер-увреди размотрити неке од његових карактеристика. Овај дизајн ће вам омогућити да из обе табеле изаберете само оне записе који се налазе у првој и другој табели. Како то ради? У првој табели имамо главни кључ - ИД, који означава редни број записа у табели.
Приликом креирања друге табеле, исти кључкористи се као серијски број, пример се може видети на сликама. Приликом одабира података, наредба Селецт ће као резултат одредити само оне записе чији се бројеви секвенци подударају, што значи да се налазе у првој и другој табели.
Када користите конструкцију, морате да разуметекакве податке треба да добијете. Најчешћа грешка, посебно код почетника програмера базе података, је злоупотреба конструкције Иннер Јоин. Као пример, МиСКЛ Иннер Јоин, можете узети у обзир скрипту која ће нам из претходно описаних и попуњених табела вратити информације о објектима и њиховим својствима. Али и овде може бити неколико начина за употребу структуре. С тим у вези, Ми СКЛ је врло флексибилан језик. Дакле, можете погледати примере коришћења МиСКЛ Иннер Јоин.
Спајање табела без навођења било каквих параметара. У овом случају добићемо резултат таквог плана:
Ако кроз Коришћење сервисне речи назначимо данеопходно је узети у обзир главне кључеве записа у табелама, тада ће се резултат избора радикално променити. У овом случају добићемо избор који ће вратити само оне редове који имају исте главне кључеве.
Могућ је и трећи случај употребеконструкције, када су у упиту кроз реч „он“ назначена поља помоћу којих треба да се спајају табеле. У овом случају, избор ће вратити следеће податке:
Ако размислите о другом начину спајања табела помоћу МиСКЛ - Јоин конструкције, приметићете разлику у подацима који се приказују. Овај механизам је лева конструкција.
Коришћење Лефт Јоин МиСКЛ-а има неке особености и, попут Иннер-а, захтева јасно разумевање резултата који треба добити.
У овом случају, сви записи ће бити изабрани први.из прве табеле, а касније ће им бити приложени записи из друге табеле својстава. Штавише, ако прва табела садржи запис, на пример, „стоол“, а друга табела нема ниједно својство за то, тада ће леви оператер приказати нулу испред овог записа, што програмеру каже да постоје нема знакова за ову врсту предмета ...
Коришћење овог дизајна омогућиће вам да утврдите која поља или, на пример, роба у продавници немају цену, гарантни рок итд.
За практично разматрање оператераЛефт Јоин МиСКЛ конструкције користе претходно описане табеле. На пример, треба да изаберете целу листу производа који се налазе у продавници и проверите за који од њих нема знакова или својстава. У овом случају, избор ће приказати све производе, а празне вредности ће се поставити за оне који немају својство.
Као параметар, придруживање може садржати не само специфицирање поља помоћу којих се повезују табеле, већ може садржати и оператер клаузуле Вхере.
На пример, размотрите скрипту која би требалода нам врате само оне записе за које нема знака. У овом случају, морате додати оператор услова у структуру Придруживања и навести шта тачно треба вратити као резултат.
Када користите Придруживање - Где у МиСКЛ-у, морате јасно разумети да ће бити приказани само они записи на које се односи наведени услов, а избор ће тада изгледати овако:
Такви упити омогућавају одабир поспецифични подаци који се односе на стање које је изабрао програмер. Можете одредити неколико таквих услова, истовремено повећавајући параметре за одабир података из комбинованих табела.
Придруживање је у ствари универзално.Омогућава вам не само избор различитих избора, већ и укључивање у упите од једне до неколико табела како бисте унели додатне услове у избор. Конструкција се такође може користити за друге операције података. На пример, Придруживање се може користити за модификовање података у табели. Уместо да појаснимо услове из табеле или у оним случајевима када треба да ажурирате податке у неколико табела за исте услове.
На пример, размотрите следећи проблем.Постоје три табеле које садрже неке податке. Треба да промените податке у обе табеле помоћу једног упита. Само да бисте решили ову врсту задатака, можете користити конструкцију Придруживање у наредби Ажурирање. Тип саме структуре придруживања зависи, као у случају узорковања података, од резултата који програмер жели да добије.
Погледајмо најједноставнији пример.Потребно је ажурирати податке за исте услове једним захтевом. Упити ове врсте граде се за оптимизацију рада са базом података. Зашто писати различите упите за сваку од табела кад све манипулације подацима можете извршити једним упитом? Пример придруживања МиСКЛ ажурирању у нашем случају биће овако:
Често када радите са базом податакапотребно је градити упите не само спајањем неколико табела, већ и коришћењем подупита. Почетник програмер базе података прилично је тешко разумети такве задатке. Тешкоћа лежи у чињеници да морате да размислите о сваком кораку, да одредите које податке из које табеле или упита треба добити и како ћете са њима морати да радите у будућности.
За конкретније разумевање, можете размотрити(у МиСКЛ Јоин) примери сложених упита. Ако сте почетник и тек почињете да радите са базама података, онда ће ова обука имати само користи. Идеална опција би били примери МиСКЛ Лефт Јоин.
Овај захтев ће нам вратити 58 записа о уговорупродаја за које је стање готовине попуњено или постоји на изабрани датум. У овом случају ово је тренутни датум. Такође, у избор је додат услов да назив уговора мора да садржи симболе - „123“. Подаци (подаци) приказани на екрану биће сортирани - поредани према броју уговора.
Следећи пример ће приказати податке о свим уплатама, у којима ће бити наведен број уговора.
Као што је раније поменуто, приликом рада са базама податакаподатака, можете комбинирати не само табеле, већ и табелу са упитом. Овај дизајн се углавном користи за убрзавање упита и његову оптимизацију.
На пример, ако је потребно из табеле којаима неколико стотина поља и рецимо хиљаду записа, изаберите само два поља, онда бисте требали користити упит који ће вратити само потребна поља и комбиновати га са главним скупом података. Као пример МиСКЛ Јоин Селецт, можете размотрити упит ове врсте:
Ово нису сви начини коришћења стандардаМиСКЛ конструкције, али само стандардне. Како се користи конструкција Придруживање и у каквим облицима зависи од самог програмера, али вреди запамтити и узети у обзир какав резултат треба добити при извршавању упита.