Your SlideShare is downloading. ×
C18 ham so_trong_map_info
C18 ham so_trong_map_info
C18 ham so_trong_map_info
C18 ham so_trong_map_info
C18 ham so_trong_map_info
C18 ham so_trong_map_info
C18 ham so_trong_map_info
C18 ham so_trong_map_info
C18 ham so_trong_map_info
C18 ham so_trong_map_info
C18 ham so_trong_map_info
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

C18 ham so_trong_map_info

98

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
98
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. CHÖÔNG XVIII.HAØM SOÁ VAØ BIEÅU THÖÙC TRONG MAPINFOTrong caùc chöông tröôùc chuùng ta ñaõ sô löôïc qua caùch söû duïng haøm soá vaø bieåuthöùc ôû nhieàu phaàn khaùc nhau trong quaù trình xaây döïng vaø phaân tích baûn ñoà. Vieäc söûduïng haøm soá ñöôïc thöïc hieän thoâng qua bieåu thöùc (Expression). Bieåu thöùc cho pheùpsöû duïng moät luùc nhieàu haøm soá thoâng qua vieäc phoái hôïp chuùng vôùi nhau nhôø caùc pheùptoaùn cuõng nhö töø khoaù. Bôûi vì vieäc söû duïng moät haøm soá ñôn leû thöôøng chæ cho tanhöõng keát quaû ñôn giaûn, coù tính chaát tröïc quan nhöng vieäc phoái hôïp nhieàu haøm soátrong moät bieåu thöùc ñoâi khi coù theå cho ta nhöõng keát quaû raát aán töôïng ñoàng thôøi ruùtngaén ñöôïc nhieàu böôùc trong quaù trình phaân tích thoâng tin. Hieåu ñöôïc chöùc naêng cuûatöøng haøm soá khoâng phaûi laø vieäc khoù nhöng söû duïng chuùng trong tröôøng hôïp naøo, phoáihôïp caùc haøm soá vôùi nhau trong bieåu thöùc nhö theá naøo ñeå ñaït ñöôïc keát quaû mongmuoán laïi laø moät vaán ñeà khoâng ñôn giaûn. Noù ñoøi hoûi ngöôøi söû duïng phaûi hieåu roõ muïcñích mình muoán ñaït ñöôïc cuõng nhö nhôù tính naêng cuûa caùc haøm soá ñeå söû duïng.Haøm soá vaø bieåu thöùc coù theå ñöôïc söû duïng trong raát nhieàu öùng duïng cuûa MapInfo.Ta coù theå söû duïng haøm soá trong caùc leänh sau: Select, SQL Select, Update Column,Create Thematic Map, vaø Layer Control (Labels > Label Options, choïn menu thaû xuoángcuûa Label). Vieäc söû duïng haøm soá gaàn nhö khoâng coù giôùi haïn vì chuùng coù theå ñöôïc söûduïng vaøo vieäc tìm kieám hay phaân tích thoâng tin, laøm chuù giaûi cho moät phaàn baûn ñoànaøo ñoù, thay ñoåi vaø caäp nhaät thoâng tin, hieån thò baûn ñoà theo yù muoán,v.v.... Coù theå noùivieäc söû duïng haøm soá vaø bieåu thöùc laø “muoân hình vaïn traïng”.Haøm soá khieán cho vieäc tìm kieám vaø phaân tích thoâng tin trong MapInfo ñöôïc trôû neânnhanh choùng vaø theo yù muoán cuûa ngöôøi duøng. Caùc haøm soá trong MapInfo ñöôïc chiathaønh moät soá nhoùm khaùc nhau. Ta seõ laàn löôït xem xeùt chuùng.XVIII.1. CAÙC HAØM SOÁ TRONG MAPINFOXVIII.1.1. Caùc Haøm Toaùn hoïc- Abs(num): Traû veà giaù trò tuyeät ñoái cuûa moät soá.- Cos(num): Traû veà cosine cuûa moät soá; num ñöôïc tính baèng radian. (1 radian =57,29578 ñoä)- Int(num): Traû veà phaàn soá nguyeân cuûa moät soá.- Maximum(num, num): Traû veà soá lôùn hôn trong hai soá.- Minimum(num, num): Traû veà soá nhoû hôn trong hai soá.PDF created with pdfFactory Pro trial version www.pdffactory.com
  • 2. - Round(num1, num2): Traû veà giaù trò cuûa soá num1, ñöôïc laøm troøn ñeán giaù trò gaàn nhaátvôùi giaù trò cuûa num2 (ví duï nhö neáu num2 laø 10 thì num1 ñöôïc laøm troøn ñeán giaù trògaàn vôùi 10 nhaát).- Sin(num): Traû veà sine cuûa moät soá; num tính baèng radian.- Tan(num): Traû veà tang cuûa moät soá; num ñöôïc tính baèng radian.XVIII.1.2. Caùc Haøm toång hôïp soá lieäu cuûa MapInfo (Aggregate Functions)- Count(*): Ñeám soá löôïng baûn ghi (haøng) trong moät nhoùm. Haøm naøy laáy daáu hoa thò(*) laøm ñoái soá vì noù aùp duïng cho baûn ghi moät caùch toång quaùt vaø khoâng aùp duïngcho moät tröôøng ñaëc bieät naøo cuûa baûn ghi.- Sum (<expression>): Tính toång cuûa caùc giaù trò trong bieåu thöùc <expression> cho taátcaû caùc baûn ghi trong moät nhoùm.- Avg (<expression>): Tính giaù trò trung bình cuûa caùc giaù trò trong bieåu thöùc <expres-sion> trong taát caû caùc baûn ghi cuûa moät nhoùm.- Max (<expression>): Tìm giaù trò lôùn nhaát trong <expression> trong taát caû caùc baûnghi cuûa moät nhoùm.- Min(<expression>): Tìm giaù trò thaáp nhaát trong <expression> trong taát caû caùc baûnghi trong moät nhoùm.XVIII.1.3. Caùc Haøm traû veà giaù trò laø vaät theå ñoà hoaï- Buffer( obj , num_res , num_width , str ): Traû veà moät vaät theå kieåu vuøng bieåu thò chomoät vuøng ñeäm. Thoâng soá num_res chæ ñònh ñoä phaân giaûi, tính theo soá noát treân moätvoøng troøn; num_width laø baùn kính cuûa vuøng ñeäm; str laø teân cuûa ñôn vò tính khoaûngcaùch söû duïng trong num_width.- Centroid(obj ): Traû veà moät vaät theå ñieåm coù toaï ñoä taïi troïng taâm cuûa vaät theå obj.- CreateCircle(num_x, num_y, num_radius): Traû veà moät vaät theå laø ñöôøng troøn.num_radius laø khoaûng caùch tính theo daëm.- CreateLine(num_x, num_y, num_x2, num_y2): Traû veà moät vaät theå kieåu ñöôøng thaúng.- CreatePoint(num_x, num_y): Traû veà moät vaät theå ñieåm.Moãi haøm soá treân traû veà moät vaät theå ñoà hoaï. Neáu ta goõ leänh Update trong cöûa soåMapBasic thì ta coù theå söû duïng nhöõng haøm soá naøy ñeå taïo ra caùc vaät theå cho moãi haøngtrong baûng. Ví duï, neáu baûng cuûa ta chöùa caùc coät x1, y1, x2 vaø y2 thì leänh sau seõ taïora moät ñöôøng thaúng cho moãi haøng trong baûng:Update <teân baûng> Set Obj = CreateLine(x1,y1,x2,y2)Löu yù: Leänh Update ñònh nghóa laïi moãi vaät theå ñoà hoaï trong baûng. Ta neân sao löulaïi lôùp baûn ñoà caàn laøm vaø thöïc taäp treân baûn sao ñoù.XVIII.1.4. Caùc Haøm soá traû veà caùc tính toaùn ñòa lyù- Area(obj, str): Traû veà dieän tích cuûa vaät theå. Thoâng soá str chæ ñònh teân ñôn vò tính dieäntích, ví duï “sq mi” (daëm vuoâng) hay “sq km” (km2).PDF created with pdfFactory Pro trial version www.pdffactory.com
  • 3. - CentroidX(obj): Traû veà kinh ñoä X cuûa troïng taâm cuûa moät vaät theå.- CentroidY(obj): Traû veà vó ñoä Y cuûa troïng taâm cuûa moät vaät theå.- Distance(num_x, num_y, num_x2, num_y2, str): Traû veà khoaûng caùch giöõa hai vò trí.Hai thoâng soá ñaàu tieân xaùc ñònh giaù trò x vaø y cuûa vò trí baét ñaàu; hai thoâng soá tieáptheo xaùc ñònh giaù trò x vaø y cuûa vò trí keát thuùc; thoâng soá str laø teân ñôn vò ño khoaûngcaùch, ví duï nhö “mi” hay “km”.- ObjectLen(obj, str): Traû veà chieàu daøi cuûa vaät theå. Giaù trò str xaùc ñònh teân ñôn vòkhoaûng caùch ví duï nhö “mi” hay “km”. Chæ coù caùc vaät theå laø ñöôøng thaúng, ñöôøng(gaáp khuùc) vaø cung laø coù chieàu daøi khaùc khoâng.- Perimeter(obj, str): Traû veà chu vi cuûa vaät theå. Giaù trò str xaùc ñònh teân ñôn vò ñokhoaûng caùch. Chæ coù caùc vaät theå kieåu vuøng, ellipse vaø hình chöõ nhaät laø coù chu vikhaùc khoâng.XVIII.1.5. Caùc haøm ngaøy thaùng- CurDate( ): Traû veà ngaøy thaùng naêm hieän haønh.- Day(date): Traû veà phaàn ngaøy trong thaùng (1 - 31) cuûa ngaøy.- Month(date): Traû veà phaàn thaùng (1 - 12) cuûa ngaøy.- Weekday(date): Traû veà phaàn ngaøy trong tuaàn (1 - 7) cuûa ngaøy, 1 = Chuû Nhaät.- Year(date): Traû veà phaàn naêm cuûa ngaøy.XVIII.1.6. Caùc haøm veà chuoãi- Chr$( num ): Traû veà moät kyù töï töông öùng vôùi maõ kyù töï laø num (ví duï chr$(65) seõ traûveà chuoãi “A”).- DeformatNumber$( str ): Ñaûo ngöôïc taùc ñoäng cuûa haøm FormatNumber$, traû veà moätchuoãi khoâng coù caùc daáu phaân caùch haøng ngaøn.- Format$( num , str ): Traû veà moät chuoãi bieåu thò moät soá ñaõ ñöôïc ñònh daïng. Ví duïFormat$(12345.678,”$,#.##”) traû veà giaù trò “$12,345.68”.- FormatNumber$( num ): Traû veà moät chuoãi bieåu thò moät con soá ñaõ ñöôïc ñònh daïng.Haøm soá naøy ñôn giaûn hôn haøm Format$, nhöng cho ta ít quyeàn kieåm soaùt trongvieäc ñònh daïng hôn (ví duï nhö soá ñònh daïng luoân coù daáu phaân caùch haøng ngaøn).- InStr( num , str1 , str2 ): Tìm kieám chuoãi str1 baét ñaàu töø vò trí kyù töï thöù num, vaø tìmsöï hieän dieän cuûa phaàn ñoù trong chuoãi str2. Haøm naøy traû veà vò trí khi tìm thaáy keátquaû trong str2, hoaëc traû veà 0 neáu khoâng tìm thaáy. Ñeå baét ñaàu tìm kieám chuoãi töøñaàu, naïp giaù trò num laø moät (1).- LCase$( str ): Traû veà ñònh daïng chöõ vieát thöôøng cuûa chuoãi str.- Left$( str , num ): Traû veà num soá kyù töï ñaàu tieân cuûa chuoãi str.- Len( str ): Traû veà soá kyù töï trong chuoãi str.- LTrim$( str ): Caét boû baát kyø khoaûng traéng naøo ôû ñaàu chuoãi str vaø traû veà keát quaû.- Mid$( str, num1, num2 ): Traû veà moät phaàn cuûa chuoãi str baét ñaàu töø kyù töï thöù num1PDF created with pdfFactory Pro trial version www.pdffactory.com
  • 4. vaø daøi num2 soá kyù töï.- Proper$( str ): Traû veà moät chuoãi vôùi caùch vieát hoa ñuùng kieåu (chöõ ñaàu tieân vieát hoa).- Right$( str , num ): traû veà num soá kyù töï cuoái cuøng cuûa chuoãi str.- RTrim$( str ): Caét boû baát kyø khoaûng traéng naøo ôû phaàn cuoái cuûa chuoãi str vaø traû veàkeát quaû.- Str$( expr ): traû veà moät chuoãi töông öùng vôùi giaù trò cuûa bieåu thöùc expr.- UCase$( str ): Traû veà daïng chöõ vieát hoa (toaøn boä) cuûa chuoãi str.- Val( str ): Traû veà giaù trò soá cuûa moät chuoãi; ví duï Val(“18”) traû veà soá 18.XVIII.2. CAÙC TOAÙN TÖÛ VAØ TÖØ KHOAÙ TRONG BIEÅU THÖÙCNhö ñaõ trình baøy sô boä ôû phaàn treân, vieäc hieåu caùc haøm soá ñôn leû laø töông ñoái ñôngiaûn. Tuy nhieân caùc haøm soá ñôn leû ít khi naøo cho ta moät keát quaû phaân tích trong tröôønghôïp coù nhieàu bieán soá. Ñoái vôùi vieäc phaân tích thoâng tin nhö vaäy ngöôøi ta caàn phaûi phoáihôïp nhieàu haøm soá vôùi nhau. Caùc haøm soá ñöôïc lieân keát vôùi nhau thoâng qua caùc toaùntöû vaø caùc töø khoaù. Vieäc söû duïng nhieàu haøm soá chung vôùi nhau ñöôïc theå hieän qua bieåuthöùc. Phaàn naøy seõ trình baøy caùc toaùn töû vaø töø khoaù ñeå phoái hôïp caùc haøm soá vôùi nhautrong bieåu thöùc.XVIII.2.1. Caùc Toaùn töû So saùnhTrong MapInfo coù caùc toaùn töû so saùnh sau:= baèng<> khaùc> lôùn hôn< nhoû hôn>= lôùn hôn hay baèng=< nhoû hôn hay baèng_ töông töï (töôïng tröng cho moät kyù töï baát kyø)% töông töï (töôïng tröng cho nhieàu kyù töï baát kyø)XVIII.2.2. Caùc Toaùn töû Toaùn hoïckyù hieäu yù nghóa ví duï+ coäng A+B- tröø A-B, -A (aâm A)* nhaân A*B/ chia A/B^ luõy thöøa A^BÑoái vôùi caùc bieåu thöùc coù caùc giaù trò ñöôïc ñònh daïng theo caùc kieåu khaùc nhau,MapInfo seõ xöû lyù caùc soá lieäu nhö sau:- Ngaøy thaùng (Date) + moät soá: keát quaû ñöôïc ñònh daïng laø ngaøy thaùng (Date).PDF created with pdfFactory Pro trial version www.pdffactory.com
  • 5. - Soá nguyeân (Integer) + Soá nguyeân: keát quaû ñöôïc ñònh daïng laø soá nguyeân (Integer).- Ngaøy thaùng (Date) - moät soá: keát quaû ñöôïc ñònh daïng laø ngaøy thaùng.- Soá - Ngaøy thaùng (Date): keát quaû ñöôïc ñònh daïng laø ngaøy thaùng (Date)- Soá nguyeân - Soá nguyeân: keát quaû ñöôïc ñònh daïng laø soá nguyeân (Integer)- Moät soá - Moät soá: keát quaû ñöôïc ñònh daïng laø Float.- Soá nguyeân * Soá nguyeân: keát quaû ñöôïc ñònh daïng laø soá nguyeân (Integer)- Moät soá * Moät soá: keát quaû ñöôïc ñònh daïng laø Float.- Moät soá/Moät soá: Keát quaû ñöôïc ñònh daïng laø Float.- Moät soá ^ Moät soá: keát quaû ñöôïc ñònh daïng laø Float.Trong MapInfo ta coù theå thöïc hieän ñöôïc caùc pheùp tính toaùn sau:- Theâm moät soá vaøo moät ngaøy ñeå taïo ra moät ngaøy khaùc.- Tröø moät ngaøy cho moät soá ñeå taïo ra moät ngaøy khaùc.- Tröø moät ngaøy cho moät ngaøy ñeå taïo ra moät soá.Khi coäng hay tröø moät soá vaøo giaù trò ngaøy thì MapInfo xöû lyù con soá ñoù nhö laø soá ngaøy.Khi coäng hay tröø trong moät tuaàn haõy söû duïng soá 7; coäng/tröø trong moät thaùng haõy söûduïng soá 30 hay 31. Khi tröø moät ngaøy cho moät ngaøy thì keát quaû seõ laø soá ngaøy (moät consoá).XVIII.2.3. Caùc toaùn töû Luaân lyù vaø caùc Toaùn töû Ñòa lyùXVIII.2.3.1. Caùc Toaùn töû Luaân lyùCaùc toaùn töû “and” (vaø), “or” (hoaëc) vaø “not” (khoâng) laø caùc toaùn töû luaân lyù. Chuùngñöôïc söû duïng ñeå phoái hôïp caùc Bieåu thöùc trong leänh Select vaø trong meänh ñeà Wherecondition cuûa leänh SQL Select. MapInfo coi caùc bieåu thöùc naøy laø moät pheùp kieåm tra ñeåaùp duïng cho moãi baûn ghi (haøng) trong moät baûng. Moãi pheùp kieåm tra nhö vaäy seõ traû veàcaâu traû lôøi laø coù/khoâng (hay ñuùng/sai). MapInfo söû duïng caùc toaùn töû luaân lyù ñeå phoái hôïpcaùc caâu traû lôøi coù/khoâng rieâng leû thaønh moät caâu traû lôøi coù/khoâng cuoái cuøng ñeå giaûi quyeátcaâu hoûi: baûn ghi (haøng) ñang ñöôïc xem xeùt coù thoaû ñieàu kieän choïn hay khoâng?- and ñöôïc coi laø ñuùng (“true”) khi (vaø chæ khi) taát caû tham soá cuûa noù (töùc laø caùcbieåu thöùc maø noù noái laïi) ñeàu ñuùng. Moät baûn ghi phaûi thoaû maõn taát caû caùcñieàu kieän trong bieåu thöùc thì môùi ñöôïc choïn.- or ñöôïc coi laø ñuùng khi moät,vaøi hay taát caû caùc tham soá (töùc laø caùc bieåu thöùcmaø töø khoaù naøy lieân keát) ñuùng. Moät baûn ghi thoaû maõn moät trong nhöõng ñieàukieän cuûa bieåu thöùc thì seõ ñöôïc choïn. Noù cuõng ñöôïc choïn khi hai hay taát caûñieàu kieän ñeàu ñöôïc thoaû.- not laø ñuùng khi ñoái tham soá cuûa noù (bieåu thöùc maø noù ñöôïc söû duïng vaøo ñoù) laøsai (“false’). Moät baûn ghi seõ ñöôïc choïn khi noù khoâng thoaû ñieàu kieän ñöa ra.XVIII.2.3.2. Caùc Toaùn töû Ñòa lyùMapInfo coù moät soá toaùn töû ñòa lyù. Chuùng ñöôïc söû duïng ñeå choïn caùc vaät theå döïaPDF created with pdfFactory Pro trial version www.pdffactory.com
  • 6. treân moái quan heä khoâng gian ñoái vôùi (caùc) vaät theå khaùc. MapInfo coù moät töø khoaù ñaëcbieät (teân tröôøng) ñeå söû duïng trong caùc toaùn töû ñòa lyù: “obj” hay “object” (vaät theå). Töøkhoaù naøy (ñöôïc coi nhö moät teân tröôøng) cho MapInfo bieát raèng noù phaûi choïn giaù tròdöïa treân caùc vaät theå ñoà hoaï trong baûng cuûa MapInfo chöù khoâng döïa vaøo baûng döõ lieäu.Caùc toaùn töû ñòa lyù naèm giöõa caùc vaät theå ñang ñöôïc xem xeùt. Ta coù theå choïn caùctoaùn töû ñòa lyù trong menu thaû xuoáng Operators.Döôùi ñaây laø nhöõng toaùn töû ñòa lyù:Toaùn töû YÙ nghóa- Contains (Chöùa): Vaät theå A chöùa vaät theå B neáu troïngtaâm cuûa vaät theå B naèm trong ranh giôùicuûa vaät theå A.- Contains Entire (Chöùa hoaøn toaøn): Vaät theå A chöùa hoaøn toaøn vaät theå Bneáu ranh giôùi cuûa B naèm hoaøn toaøntrong ranh giôùi cuûa A.- Within (naèm trong) Vaät theå A naèm trong vaät theå B neáutroïng taâm cuûa noù naèm trong ranh giôùicuûa B.- Entirely Within (Hoaøn toaøn naèm trong): Vaät theå A hoaøn toaøn naèm trong vaät theåB neáu ranh giôùi cuûa noù hoaøn toaøn naèmtrong vaät theå B.- Intersects (Giao, Caét): Vaät theå A giao (caét) vaät theå B neáuchuùng coù ít nhaát moät ñieåm chung.XVIII.2.4. Caùc töø khoaù trong Bieåu thöùcMapInfo cho pheùp söû duïng caùc töø khoaù sau: “any” (baát kyø), “all” (taát caû), “in” (trong)vaø “between” (trong khoaûng). Nhöõng töø khoaù naøy phaûi ñöôïc goõ vaøo bieåu thöùc (khoângcoù saün).Söû duïng “any” ñeå choïn baát kyø yeáu toá naøo trong taäp hôïp caùc yeáu toá. Ta seõ laáy víduï trong lôùp baûn ñoà cac_tinh. Ví duï:Ten = any(“Souøc Traeâng”, “Tieaøn Giang”, “Voùnh Long”)Bieåu thöùc naøy ñuùng khi teân tænh laø Soùc Traêng, Tieàn Giang, Vónh Long (xin nhaéc laïilaø tieáng Vieät khoâng hieån thò ñuùng trong bieåu thöùc).Ta seõ xem xeùt ví duï sau ñeå hieåu yù nghóa cuûa “all””Ten <> all(“Souøc Traeâng”, “Tieaøn Giang”, “Voùnh Long”)Bieåu thöùc naøy coù nghóa laø choïn taát caû caùc tænh ngoaïi tröø 3 tænh Soùc Traêng, TieànGiang vaø Vónh Long.Haõy xem chuyeän gì xaûy ra neáu ta goõ bieåu thöùc sau:Ten <> any(“Souøc Traeâng”, “Tieaøn Giang”, “Voùnh Long”)Ví duï döôùi ñaây cho thaáy caùch söû duïng “in”:PDF created with pdfFactory Pro trial version www.pdffactory.com
  • 7. Ten in(“Souøc Traeâng”, “Tieaøn Giang”, “Voùnh Long”)Trong tröôøng hôïp naøy “in” töông ñöông vôùi “=any” vaø “not in” baèng vôùi “<> all”.Ví duï döôùi ñaây minh hoïa vieäc söû duïng “between”:dien_tich between 200000 and 500000(caùc tænh coù dieän tích trong khoaûng 200000 ha ñeán 500000 ha)(dien_tich between 200000 and 500000) or(dien_tich between 550000 and 700000)(caùc tænh coù dieän tích trong khoaûng 200000 ha ñeán 500000 ha hay caùc tænh coù dieäntích trong khoaûng 550000 ha ñeán 700000 ha)XVIII.2.5. Nhaäp caùc giaù trò rieâng (Haèng soá) vaøo Bieåu thöùcKhi ñöa caùc chuoãi kyù töï, caùc con soá, vaø giaù trò ngaøy thaùng vaøo bieåu thöùc, ta caànchuù yù caùc quy öôùc sau:- Ñoái vôùi chuoãi kyù töï:Khi goõ moät chuoãi kyù töï ñaëc bieät naøo ñoù vaøo bieåu thöùc, ta phaûi ñaët noù naèm giöõangoaëc keùp. Nhö vaäy MapInfo seõ xem noù nhö moät chuoãi kyù töï chöù khoâng coi ñoù laø teâncuûa moät tröôøng. Ví duï neáu ta goõ “Soùc Traêng” (coù ngoaëc keùp) laø ñuùng nhöng chæ ñeå laøSoùc Traêng (khoâng coù ngoaëc keùp) laø sai.Khi ñöa chuoãi kyù töï vaøo bieåu thöùc ta cuõng coù theå söû duïng caùc toaùn töû ñeå thöïc hieäncaùc pheùp so saùnh chuoãi. Ta coù theå söû duïng caùc toaùn töû so saùnh nhö lôùn hôn (>), nhoûhôn (<), lôùn hôn hay baèng (>=), nhoû hôn hay baèng (=<) cuõng nhö daáu coäng (+) vaødaáu baèng (=) trong bieåu thöùc coù söû duïng chuoãi. Ví duï khi tìm kieám döõ lieäu trong baûngthanh_pho, ta coù theå laäp caùc bieåu thöùc nhö sau:* ten = “Haø Noäi”: tìm thaønh phoá coù teân laø Haø Noäi.* ten > “N”: tìm caùc thaønh phoá coù teân baét ñaàu töø chöõ caùi sau chöõ “N”. (Xemtheâm veà xeáp thöù töï trong phaàn phuï luïc).Trong moät tình huoáng khaùc, ví duï nhö khi laøm chuù giaûi, ta coù theå söû duïng bieåu thöùcñeå ñöa caùc chuoãi vaøo chuù giaûi, ví duï nhö:* dien_tich + “ heùcta”: daùn nhaõn leân baûn ñoà laø soá trong tröôøng dien_tichcoäng theâm chöõ heùcta phía sau.* “Dieän tích: “ + dien_tich + “ heùcta”: töông töï nhö ví duï treân nhöngnhaõn seõ coù theâm chöõ “Dieän tích: “ phía tröôùc con soá töø tröôøng dien_tich.Caùc ví duï khaùc veà chuoãi ñaõ ñöôïc trình baøy trong phaàn treân.- Ñoái vôùi con soá:Khi goõ caùc giaù trò baèng soá, khoâng ñöôïc söû duïng daáu phaåy (daáu phaân caùch haøngngaøn), daáu ñoâla hoaëc baát kyø kyù töï naøo ngoaïi tröø caùc con soá, daáu thaäp phaân (trongtieáng Anh laø daáu chaám) hoaëc daáu tröø ñeå chæ soá aâm. Ta coù theå söû duïng E ñeå chæ soámuõ.- Ñoái vôùi ngaøy thaùng:Moät ngaøy thaùng ñaày ñuû bao goàm moät giaù trò ngaøy, moät giaù trò thaùng vaø moät giaù tròPDF created with pdfFactory Pro trial version www.pdffactory.com
  • 8. tuyø choïn laø naêm. Naêm ñöôïc xaùc ñònh baèng hai hay boán chöõ soá vaø ñöôïc ñaët trong daáungoaëc keùp. Caùc thaønh phaàn cuûa moät ngaøy thaùng ñöôïc taùch bieät ra baèng daáu tröø (-)hay daáu xuyeäc xuoâi (/). Khi nhaäp giaù trò ngaøy thaùng vaøo bieåu thöùc, ngaøy thaùng cuõngphaûi ñaët trong daáu ngoaëc keùp. Neáu giaù trò naêm khoâng ñöôïc xaùc ñònh thì giaù trò maëcñònh laø naêm hieän haønh treân ñoàng hoà maùy tính. Caùc giaù trò döôùi ñaây laø caùc haèng soáñuùng:Thöù töï trong heä thoáng Keát quaû MapInfo mong ñôïi ta goõ vaøoM/d/yy " 02/28/1998"M/d/yyyy " 02/28/1998"MM/dd/yy "02/28/1998"MM/dd/yyyy "02/28/1998"yy/MM/dd "1998/02/28"dd-MMM-yy "02-28-1998"(M: thaùng; d: ngaøy; y: naêm. Soá kyù töï chæ soá chöõ soá ñöôïc söû duïng)Khi thao taùc vôùi caùc soá lieäu lieân quan ñeán ngaøy thaùng, ta coù theå söû duïng caùc haømsoá veà ngaøy thaùng ñeå tìm kieám döõ lieäu. Giaû söû trong baûng MapInfo cuûa ta coù moät tröôøngñöôïc ñònh daïng laø Date (kieåu ngaøy thaùng) coù teân laø thoi_gian (thôøi gian) vaø ta nhaäpvaøo ñoù caùc soá lieäu veà ngaøy cuûa moät coâng vieäc naøo ñoù. Haõy xem caùc ví duï sau:* thoi_gian = 9/12/99: tìm nhöõng baûn ghi naøo coù thôøi gian laø ngaøy 12thaùng 9 naêm 1999 (thaùng ñöôïc ñaët tröôùc ngaøy khi nhaäp soá lieäu theo thieát laäpmaëc ñònh treân maùy tính, tröø khi ta ñaõ thay ñoåi ñònh daïng ngaøy thaùng trong maùytính tröôùc ñoù).* thoi_gian > 12/23/2001: tìm nhöõng soá lieäu naøo coù thôøi gian sau ngaøy23 thaùng 12 naêm 2001.* Month (thoi_gian) > 3 and Month (thoi_gian) < 5: tìm nhöõng soálieäu naøo coù thôøi gian sau thaùng 3 vaø tröôùc thaùng 5. Trong ví duï naøy ta söû duïnghaøm soá Month ñeå trích rieâng phaàn thaùng cuûa ngaøy thaùng naêm ra; löu yù raèng neáusoá lieäu cuûa ta coù nhieàu naêm khaùc nhau thì MapInfo khoâng quan taâm ñeán soá lieäuñoù laø naêm naøo. Ñieàu naøy cuõng coù yù nghóa nhaát ñònh. Giaû söû ta thöïc hieän ñieàutra veà soá löôïng cuûa moät loaøi ñoäng vaät hoang daõ chaúng haïn trong nhieàu naêm, vaøta giaû ñònh muøa loaøi ñoù xuaát hieän nhieàu vaøo khoaûng thaùng 3 ñeán thaùng 5. Ñeåkieåm tra giaû thuyeát, ta coù theå söû duïng bieåu thöùc treân vaø choïn ra taát caû nhöõngsoá lieäu ghi nhaän ñöôïc veà loaøi ñoù trong thôøi gian treân cuûa caùc naêm ñeå tính tyû leäphaàn traêm xem coù ñuùng laø nhö vaäy hay khoâng. Neáu ta khoâng thích daøi doøng,bieåu thöùc treân coù theå vieát ngaén hôn baèng caùch söû duïng töø khoaù between:Month (thoi_gian)between 3 and 5.* Weekday(thoi_gian) = 1 or Weekday(thoi_gian) = 7: tìm nhöõngngaøy thaùng naøo coù thöù trong tuaàn laø thöù Baûy vaø Chuû Nhaât. Trong ví duï naøy tasöû duïng haøm Weekday ñeå trích ra phaàn thöù trong tuaàn cuûa moät ngaøy (1 ñöôïcquy öôùc laø Chuû Nhaät). Moät nhaø kinh doanh coù theå tính xem ngöôøi tieâu duøng coùñi mua haøng nhieàu vaøo hai ngaøy cuoái tuaàn hay khoâng baèng bieåu thöùc naøy chaúnghaïn.Ngoaøi ra MapInfo coù tuyø choïn ñoåi giaù trò naêm naïp vaøo laø 2 chöõ soá thaønh giaù trò 4chöõ soá. Noù cuõng cho pheùp ta thay ñoåi ñònh daïng ngaøy thaùng maëc ñònh thaønh ñònhdaïng ngaøy thaùng naøo phuø hôïp nhaát vôùi döõ lieäu cuûa ta. Thieát laäp maëc ñònh laø cöûa soåPDF created with pdfFactory Pro trial version www.pdffactory.com
  • 9. ngaøy thaùng naøy ñöôïc taét ñi.Ta vaøo thieát laäp naøy baèng caùch choïn Options > Preferences > Systems Settings.Coù hai tuyø choïn:- Turn date windowing off (taét cöûa soå ngaøy thaùng): söû duïng theá kyû hieän haønh.- Set date window to: nhaäp giaù trò trong khoaûng töø 0 ñeán 99. Giaù trò naêm baèng 2 chöõsoá do ta nhaäp seõ ñöôïc theâm giaù trò theá kyû vaøo tuyø thuoäc vaøo con soá thieát laäp treân.Ví duï neáu ta goõ trong oâ Set date window to laø 30 thì nhöõng giaù trò naêm 2 chöõ soá tanhaäp vaøo neáu trong khoaûng töø 00 ñeán 29 thì noù seõ trôû thaønh naêm trong khoaûng2000 ñeán 2029, neáu ta nhaäp giaù trò töø 30 ñeán 99 thì giaù trò naêm seõ ôû trong khoaûng1930 ñeán 1999.XVIII.2.6. Tính öu tieân cuûa caùc toaùn töûKhi MapInfo thöïc hieän bieåu thöùc, noù caàn bieát yeáu toá naøo trong bieåu thöùc ñöôïc thöïchieän tröôùc. Ñieàu naøy ñöôïc goïi laø tính öu tieân. Theo quy öôùc caùc toaùn töû ñöôïc gaùn tínhöu tieân khaùc nhau. Nhöõng toaùn töû coù tính öu tieân cao nhaát seõ ñöôïc thöïc hieän tröôùc.Döôùi ñaây lieät keâ tính öu tieân cuûa caùc toaùn töû theo thöù töï öu tieân töø cao nhaát ñeán thaápnhaát. Caùc toaùn töû coù möùc ñoä öu tieân ngang baèng nhau seõ ñöôïc thöïc hieän tuaàn töï töøtraùi sang phaûi:1. daáu ngoaëc ñôn2. soá muõ (luyõ thöøa)3. daáu tröø (soá aâm)4. nhaân, chia5. coäng, tröø6. caùc toaùn töû ñòa lyù7. caùc toaùn töû so saùnh8. “not”9. “and”10. “or”XVIII.3. VAØI LÔØI VEÀ SÖÛ DUÏNG BIEÅU THÖÙC (EXPRESSION) TRONG MAPINFOVieát bieåu thöùc cuõng töông töï nhö vieát moät caâu vaên. Khi vieát moät caâu vaên, chuùngta söû duïng caùc töø coù trong moät ngoân ngöõ naøo ñoù ñeå phoái hôïp chuùng vôùi nhau vaø taïothaønh caâu theo nhöõng quy taéc ngöõ phaùp (hay cuù phaùp) nhaát ñònh. Cuù phaùp cuûa bieåuthöùc trong MapInfo ñôn giaûn hôn nhieàu so vôùi cuù phaùp cuûa ngoân ngöõ maø chuùng ta söûduïng thöôøng ngaøy vaø soá löôïng töø thì ít hôn raát nhieàu. Trong khi haàu heát moïi ngöôøitrong chuùng ta söû duïng ngoân ngöõ moät caùch bình thöôøng trong moät thôøi gian raát daøi vaøchuyeän caâu cuù coù veû nhö raát töï nhieân vaø bình thöôøng thì vieäc laäp bieåu thöùc thoaït ñaàulaïi coù veû khoù khaên. Maëc duø vaäy, cuõng gioáng nhö vieát vaên, chuùng ta coù nhöõng caâu ñônvaø nhöõng caâu phöùc, do vaäy cuõng coù nhöõng bieåu thöùc ñôn giaûn vaø nhöõng bieåu thöùcphöùc taïp. Ngay caû khi chuùng ta khoâng muoán “chuùi muõi” vaøo vieäc vieát nhöõng bieåu thöùcphöùc taïp thì ta vaãn coù theå söû duïng nhöõng leänh naøo trong MapInfo coù söû duïng bieåuthöùc, bôûi vì laäp nhöõng bieåu thöùc ñôn giaûn khoâng phaûi laø chuyeän khoù maø noù coøn giuùpchuùng ta laøm vieäc vôùi döõ lieäu moät caùch raát maïnh meõ.PDF created with pdfFactory Pro trial version www.pdffactory.com
  • 10. XVIII.3.1. Bieåu thöùc ñôn giaûnChuùng ta laäp bieåu thöùc baèng caùch söû duïng teân caùc coät (tröôøng) vaø caùc haèng soáphoái hôïp vôùi caùc haøm soá vaø caùc toaùn töû. Teân caùc tröôøng vaø caùc haèng soá gioáng nhöcaùc danh töø coøn caùc haøm soá vaø caùc toaùn töû gioáng nhö caùc ñoäng töø, giôùi töø vaø caùc töønoái.Chuùng ta söû duïng caùc toaùn töû vaø caùc haøm soá nhö theá naøo hoaøn toaøn phuï thuoäcvaøo vieäc chuùng ta laäp moät bieåu thöùc ñeå laøm gì. Moät bieåu thöùc ñôn giaûn nhaát coù theå chæcoù teân cuûa moät coät. Ví duï nhö khi taïo baûn ñoà chuû ñeà (Chöông XIII), trong böôùc 2 tachoïn teân tröôøng (dan_so cuûa baûng cac_tinh chaúng haïn) thì ñoù chính laø moät bieåu thöùcñôn giaûn, vaø bieåu thöùc ñoù laø: dan_so. Haõy xem moät vaøi ví duï phöùc taïp hôn chuùt ít:dan_so > 500000Bieåu thöùc treân kieåm tra xem daân soá cuûa tænh naøo (trong baûng cac_tinh) lôùn hôn 500nghìn ngöôøi. Hoaëc:dan_so/dien_tich > 100Bieåu thöùc treân kieåm tra xem daân soá chia cho dieän tích (töùc maät ñoä) cuûa tænh naøo lôùnhôn 100 (ngöôøi/ñôn vò tính dieän tích).XVIII.3.2. Bieåu thöùc phöùc taïpBieåu thöùc phöùc taïp thöïc chaát chæ laø söï phoái hôïp cuûa caùc bieåu thöùc ñôn giaûn laïi vôùinhau. Ví duï:dan_so > Avg(dan_so)Bieåu thöùc naøy tìm nhöõng tænh naøo coù daân soá lôùn daân soá trung bình cuûa taát caû caùc tænh.Hoaëc ta haõy xem ví duï sau:Format$(dan_so/Area(obj,”hectare”),”#”) =Format$(Avg(dan_so/Area(obj,”hectare”)),”#”)Veá traùi cuûa Bieåu thöùc treân (beân traùi daáu baèng) tính maät ñoä cuûa daân soá tænh baèngcaùch laáy soá daân chia cho dieän tích tænh, dieän tích tænh khoâng coù saün neân ñöôïc tính baènghaøm soá tính dieän tích Area. Sau khi tính maät ñoä xong, giaù trò maät ñoä ñöôïc laøm troøn veàsoá nguyeân baèng haøm Format$(). Veá phaûi cuûa bieåu thöùc hoaøn toaøn töông töï nhöng ôûtrong laïi tính trung bình maät ñoä daân soá cuûa taát caû caùc tænh baèng haøm Avg(). Nhö vaäytoaøn bieåu thöùc naøy coù nghóa laø tìm nhöõng tænh naøo coù maät ñoä daân soá baèng vôùi maät ñoädaân soá trung bình cuûa taát caû caùc tænh.Moät trong nhöõng thuû thuaät töông ñoái ñôn giaûn ñeå laäp bieåu thöùc laø chuùng ta phaântích xem mình caàn tính caùi gì vaø vieát caùi caàn tính ra ôû daïng ñôn giaûn nhaát cuûa noù, chiavaán ñeà ra thaønh töøng caâu hoûi nhoû vaø giaûi töøng caâu moät roài raùp chuùng vaøo caâu traû lôøitoång quaùt nhaát. Ví duï:Ta caàn tính maät ñoä daân soá cuûa tænh, vaäy maät ñoä = daân soá/dieän tích.Ta xem xeùt tieáp nhö sau: ta ñaõ coù daân soá trong tröôøng dan_so, dieän tích tænh chöacoù, vaäy coù theå tính dieän tích tænh baèng caùch naøo? Traû lôøi: söû duïng haøm soá tính dieäntích ra, ñoù chính laø haøm Area. Khi söû duïng haøm soá naøy ta caàn tính dieän tích cuûa caùigì? Traû lôøi: tính dieän tích cuûa baûng cac_tinh, nhö vaäy haøm soá coù daïng Area(obj,”ñôn vòPDF created with pdfFactory Pro trial version www.pdffactory.com
  • 11. tính dieän tích”). Obj (töùc Object - vaät theå) baùo cho ta bieát phaûi laáy vaät theå treân baûn ñoàñeå tính dieän tích, vaäy tröôùc ñoù ta phaûi baùo cho MapInfo bieát laáy vaät theå töø baûng naøo,do theá tröôùc ñoù ta phaûi choïn baûng cac_tinh. Nhö vaäy caâu hoûi seõ ñöôïc traû lôøi nhö sau:maät ñoä = daân soá/haøm soá tính dieän tích.Ta phaân tích tieáp: maät ñoä daân soá tính baèng ngöôøi/ñôn vò dieän tích vaø thöôøng ñöôïctính laø soá nguyeân, vaäy ta phaûi laøm troøn giaù trò maät ñoä tính ñöôïc. Laøm troøn laø moät pheùptính veà ñònh daïng con soá, vaäy ta söû duïng haøm Format$(), töùc laøm haøm ñònh daïng consoá. Haøm soá naøy coù caáu truùc laø Format$(con soá, “ñònh daïng con soá”). Con soá ôû ñaây laømaät ñoä, vaäy taïi vò trí con soá ta phaûi thay baèng coâng thöùc tính maät ñoä. Chöõ soá trongMapInfo ñöôïc quy ñònh laø kyù hieäu #, ta khoâng muoán laáy soá leû naøo, vaäy trong phaàn“ñònh daïng con soá” ta vieát seõ vieát laø “#”).Keát quaû laø bieåu thöùc coù daïng: Format$(dan_so/Area(obj,”hectare”),”#”).PDF created with pdfFactory Pro trial version www.pdffactory.com

×