Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 13 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
13
Dung lượng
640,26 KB
Nội dung
Hướng dẫn thực tập GIS - Bài - Lựa chọn liệu phần mềm MapInfo Bài (tiếp theo) Chọn lựa SQL TÓM TẮT BÀI THỰC TẬP Nắm vững phương pháp lựa chọn liệu Select, SQL Select Cấu trúc liệu GIS Tạo liệu (Subset of a File) Lưu trữ chất vấn Chất vấn mẫu Những cột dẫn xuất Tạo cột ñịnh danh (Creating Column Aliases) Gộp liệu Nhóm, xếp theo cột Nối Table sử dụng SQL Tìm thông tin cột liệu–Sử dụng hàm InStr() Chọn ghi liệu chẵn hay lẻ KIẾN THỨC LIÊN QUAN Kiến thức Hệ thống thông tin ñịa lý-GIS Những kiến thức, qui ước ñồ PHẦN LÝ THUYẾT Tổng quan Trong chương trước, ñã học làm cách tạo chọn lựa hình sử dụng công cụ Radius Select Boundary Select Trong tạo lựa chọn sử dụng chức MapInfo: Select and SQL Select Thế lựa chọn liệu ? Lựa chọn sử dụng Query (chất vấn) Với chức Select, sử dụng MapInfo chọn tập hợp tập liệu, sử dụng lưu tập thành lớp riêng biệt, hay sử dụng phân tích liệu 69 Hướng dẫn thực tập GIS - Bài - Lựa chọn liệu phần mềm MapInfo Chức Select cho phép chất vấn liệu lớp liệu Cho phép chọn lựa record ñối tượng từ lớp tùy thuộc vào tiêu chuẩn lựa chọn thuộc tính chúng Ví dụ, ñưa công thức chất vấn với Select, yêu cầu MapInfo: Thể vùng ñó nhiệt ñộ trung bình nhỏ 25oC ? Thể vùng ñó ñộ pH ñất lớn Thể vị trí ñiểm quan trắc mưa có lượng mưa trung bình nhỏ 1800mm/năm Những ñối tượng ñược lựa chọn ñược ñánh dấu cửa sổ Map hay Browser MapInfo tạo table tạm thời gọi table Selection (Query??) kết có bảng thuộc tính, ñồ table khác Table lưu trữ File>saved as thành table riêng biệt Ví dụ: Tỉnh Việt Nam có diện tích lớn 5000km2? Trạm khí tượng nằm tỉnh Lai Châu? Những Tỉnh Việt Nam có dân số lớn 1000000 dân ? Với chức SQL Select, sử dụng lớp (table) ñể tạo thông tin cần thiết như: Những cột liệu dẫn xuất tính toán giá trị dựa nội dung cột liệu có sẵn Kết hợp liệu ñể mà liệt kê tổng số phụ (subtotal) thay cho việc phải xem toàn liệu Phối hợp hai hay nhiều table thành table Chỉ thể cột hàng cần quan tâm Ví dụ: Nhóm Tỉnh thuộc Đông Nam Bộ Tính tổng số dân số thuộc Tây Nam Bộ Các tiêu chuẩn lựa chọn liệu Tạo biểu thức Thực Select query, cần tạo biểu thức Biểu thức phát biểu logic sử dụng câu hỏi yêu cầu Ví dụ, có table gồm ñiểm quan trắc nguồn nước số liệu phân tích Tạo table tạm thời cho ñiểm mẫu có ñộ pH nhỏ 7, sử dụng biểu thức: pH < Ở ñây pH cột liệu lưu trữ giá trị pH cho ñiểm mẫu Dấu < nghĩa nhỏ 70 Hướng dẫn thực tập GIS - Bài - Lựa chọn liệu phần mềm MapInfo MapInfo tìm kiếm tất ghi table ñiểm quan trắc nguồn nước kiểm tra ñiều kiện tìm ghi thỏa mãn ñiều kiện tạo table tạm thời, table gồm ñồ, thuộc tính Có thể thực công thức toán liệu Ví dụ, tạo table tạm thời vị trí mẫu có tổng BOD, COD nhỏ 10mg/l Sử dụng biểu thức: BOD + COD < 10 Chúng ta ñã yêu cầu MapInfo cộng số cột BOD với số cột COD so sánh chúng với số 10 Có hai cách thực biểu thức Đánh vào trực tiếp biểu thức Dùng tạo biểu thức ñơn giản, phương pháp nhanh Nhấn nút Assist hộp thoại Select xây dựng biểu thức sử dụng danh sách hộp thoại Expression Phương pháp xây dựng biểu thức phức tạp hộp thoại Expression cho phép ba kéo cho phép xây dựng biểu thức: columns, operators, functions Các trường (Columns) Hộp cho phép liệt kê danh sách tất cột table ñã chọn Cá c t oá n t ( Ope r a t or s) Hộp chứa ký hiệu toán toán tử logic (cộng (+), trừ (-), nhân (*), chia (/), lớn (>), nhỏ ( 10 Biểu thức ñiều khiển MapInfo chọn ghi có nhiệt ñộ trung bình nhỏ -10oC hay lớn +10oC Hay tạo theo biểu thức: abs(AVG_DIFF) > 10 Cá c bước sử dụng chọn lựa Quá trình chọn lựa liệu theo bước sau: Chọn Select từ Menu Query 71 Hướng dẫn thực tập GIS - Bài - Lựa chọn liệu phần mềm MapInfo Xác ñịnh table chọn lựa Tạo biểu thức logic sử dụng chọn liệu Chọn cột chứa chất vấn liệu Để xem kết chọn, chọn ô Browse MapInfo tạo Browser table Thế lựa chọn SQL ? Sự lựa chọn liệu tạo tập liệu dựa hay nhiều biến Chúng ta tạo chọn lựa công thức toán hay chất vấn liệu − Có người sinh sống Châu Âu? − Khu vực có mật ñộ dân số cao? MapInfo chứa kết câu hỏi table tạm thời gọi table chất vấn (query tables) Với lệnh Select cho phép công thức có trật tự, Những ghi chọn lệnh Select có thông tin giống liệu gốc Thực tế, chúng ghi xếp lại với Với SQL Select thực ñược nhiều hơn, tạo query tables chứa thông tin ẩn table gốc Hộp thoại SQL Select ñơn giản tạo chọn lựa hiệu Có thể ñánh trực tiếp vào hay sử dụng menu trượt tạo biểu thức logic Ví dụ: Tính m ật ñộ dâ n số với SQL Lưu trữ chất vấn liệu (Saving Queries) Bất kỳ chất vấn tạo lệnh Select hay SQL Select lưu MapInfo Query table Query table gồm file *.TAB *.QRY Sau thực Select hay SQL Select, chọn File > Save Query lưu chất vấn table Khi mở table table gốc chấn vấn ñó mở thực chất vấn Chú ý: Những chất vấn tạo dựa chất vấn khác không lưu table hay workspace Lưu chất vấn t ới W or k spa ce s Khi mở workspace có chứa chất vấn, chất vấn thực cửa sổ tạo chất vấn ñược mở Không giống lưu query table, file *.TAB không ñược tạo lưu query tới workspace Chú ý: Lưu query workspace, Save Queries ô Workspaces cần chọn Startup preferences (Options > Preferences > Startup) Những chất vấn mẫu Những chất vấn mẫu cho phép lưu tiêu chuẩn Select hay SQL mẫu sử dụng lại chúng Chúng tiết kiệm cho người sử dụng xây dựng tiêu chuẩn lựa chọn sử dụng chúng Cả hai hộp thoại Select SQL Select ñều có tùy chọn Load Template Save Template cho phép lưu dễ dàng Những mẫu chất vấn cần thiết tạo lại chất vấn với nâng cấp lựa chọn hay thực chất vấn table có cấu trúc trường liệu Lưu trữ mẫu 72 Hướng dẫn thực tập GIS - Bài - Lựa chọn liệu phần mềm MapInfo Sau ñặt ñiều kiện cho chất vấn Select hay SQL Select, nhấn nút Save Template lưu tiêu chuẩn thành mẫu (hay thành file query - *.QRY) Hộp thoại The Save Dialog to Query File, xem thêm (Options > Preferences > Directories) Chú ý: Những chất vấn không cần phức tạp phải ñúng cú pháp Sử dụng lại mẫu Có thể sử dụng lại mẫu lựa chọn ñã lưu nhấn nút Load Template Chọn file (*.QRY) muốn sử dụng nhấn Open Những cột dẫn xuất Cột dẫn xuất cột query table Nội dung chúng tạo áp dụng biểu thức cho cột số liệu tồn số table sở Ví dụ, cột mật ñộ dân số cột dẫn xuất Mặc ñịnh, hộp Select Columns có (*), tất cột table sở có query table Nếu không muốn cột này, xóa dấu (*) ñưa vào danh sách cột cần sử dụng Có thể tạo cột dẫn xuất dựa aggregate functions count, sum, avg, wtavg, max, Ví dụ: Sum(Population) Sẽ tính tổng dân số toàn Thế giới Sum(Area(obj), “sq km”) Sẽ tính tổng diện tích toàn Thế giới Tạo cột ñịnh danh Khi MapInfo tạo cột dẫn xuất, sử dụng biểu thức tên cột dẫn xuất, bất tiện Có thể xác ñịnh (ñịnh danh- alias) cho cột ví dụ, cột population density DENSITY Browser có tên: Population / Area(obj, “sq mi”) Có thể thay ñổi tên cột cần số mô tả Định danh cần theo qui ước Nó cần cách biệt biểu thức khoảng trắng ñóng kín “” Ví dụ: Country, Population / Area(obj, “sq mi”) “POP_DENSITY” Khi MapInfo tạo table query tạm thời, mật ñộ dân số có tên POP_DENSITY Có thể ñịnh danh hay ñổi tên cột table, không cột dẫn xuất Ví dụ: Country “TERRITORY”, Population / Area(obj, “sq mi”) “POP_DENSITY” Nhóm liệu Khi nhóm liệu, MapInfo thực thao tác toán học tất cột liệu ghi table Không giống lệnh Select, cho phép thực hàm toán học ghi riêng biệt, SQL cho phép Nhóm - aggregate (hay tính tổng - summarize) liệu qua ghi Khi nhóm liệu cần xác ñịnh: Những ghi nhóm Những liệu gộp 73 Hướng dẫn thực tập GIS - Bài - Lựa chọn liệu phần mềm MapInfo MapInfo có sáu hàm gộp liệu: Count(*), Sum (expression), Average (expression), WtAvg (expression), Max (expression), Min (expression) Nhóm, xếp liệu theo cột Có thể nhóm SQL query cột mà liệu có chứa giá trị Nối liệu table sử dụng SQL Khi thực SQL Select với nhiều table, MapInfo cần nối thông tin từ table khác Tạo ñồ có ñối tượng ñồ với thông tin từ nhiều bảng liệu khác PHẦN THỰC HÀNH Tạo liệu (Subset of a File) 1.1.1 Lưu trữ tiêu chuẩn chất vấn Sử dụng lại tiêu chuẩn chất vấn 1.1.2 Tạo cột liệu dẫn xuất Tạo cột liệu cách sử dụng hàm gộp liệu - aggregate functions (count, sum, avg, wtavg, max, min) Ví dụ: Sum(Population) Sum(Area(obj, "sq mi") 74 Hướng dẫn thực tập GIS - Bài - Lựa chọn liệu phần mềm MapInfo 1.1.3 Tạo cột ñịnh danh (Creating Column Aliases) Tạo cột ñịnh danh cho kết Query SQL Country, Pop_1994/ Area(obj, "sq mi") "POP_DENSITY" Country “TERRITORY”, Population / Area(obj, “sq mi”) “POP_DENSITY" 1.1.4 Lưu kết tạo liệu Lưu theo query (*.QRY) Lưu Workspace (*.wor) Lưu kết thành file (*.tab) 1.1.5 Nhóm liệu (Tập hợp liệu-Aggregate) Sử dụng hàm gộp liệu thực tiêu chuẩn sau (dựa liệu ñồ giới): 75 Hướng dẫn thực tập GIS - Bài - Lựa chọn liệu phần mềm MapInfo Count(*): ñếm số ghi nhóm lấy dấu (*) ñối số Sum (expression): tính tổng số giá trị cho tất ghi nhóm Average (expression): Tính toán trung bình cho giá trị tất ghi nhóm WtAvg (expression): Tính toán trung bình trọng số cho giá trị tất ghi nhóm Max (expression): tìm giá trị lớn cho liệu nhóm Min (expression): tìm giá trị nhỏ cho liệu nhóm 1.1.6 Nhóm xếp liệu theo cột Sử dụng Group By Columns ñể tính table kết (tổng phụ - Subtotal) Group By Columns hộp thoại tùy chọn Nếu ñưa vào hay nhiều tên cột liệu, table kết chứa tổng phụ thông tin tập hợp table Khi xác ñịnh giá trị cho Group By Columns, MapInfo chất vấn cột xem hàng có giá trị cột Nếu ta có CSDL 61 Tỉnh thành Việt nam, nhóm theo cột vùng, MapInfo lấy tất Tỉnh thuộc ĐNB vào nhóm, Tỉnh Tây Nguyên vào nhóm khác vv MapInfo tính toán thông tin tập hợp(sums, averages, vv ) cho nhóm Xác ñịnh vai trò tổng phụ: Trong Group By Columns, ñưa vào tên hay số thứ tự cột cần tính tổng phụ Ví dụ, muốn tính tổng diện tích tỉnh thuộc Đồng Nam Bộ, ñưa vào tên vùng (cột mô tả vùng Việt Nam) Đưa vào tên tên cột Vùng Select Columns 76 Hướng dẫn thực tập GIS - Bài - Lựa chọn liệu phần mềm MapInfo Đưa vào hay nhiều phương pháp tập hợp liệu (Sum, Count, Avg, Min, Max) Select columns Nhớ cách dấu phẩy Tất cột Select Columns không dựa chức tập hợp (aggregate) cần thiết liệt kê Group By Columns Chúng cột MapInfo kiểm tra xác ñịnh nhóm số liệu Mỗi tập hợp giá trị liệu cột có hàng table chất vấn (query table) Các cột dẫn xuất cần thiết kế số mối quan hệ vị trí: "1," "2," "5," cho cột ñầu tiên, thứ hai, thứ năm Trong Group By Columns, cần xác ñịnh tên hay vị trí thứ tự chúng Có thể ñưa vào Group By Columns hay nhiều giá trị MapInfo ñầu tiên nhóm theo cột ñầu tiên danh sách Với ñã nhóm, MapInfo gộp hàng theo cột hai Cho kết hàng, table chất vấn chứa giá trị cho tất cột dựa chức tập hợp liệu Chú ý: Những cột Select Columns dựa chức tập hợp liệu liệt kê Group By Columns Những cột Select Columns không dựa thao tác tập hợp nên liệt kê Group By Columns 77 Hướng dẫn thực tập GIS - Bài - Lựa chọn liệu phần mềm MapInfo 1.1.7 Nối Table sử dụng SQL Sử dụng (Where Condition) nối liệu Sử dụng cửa sổ Mapbasic ñánh lệnh theo cú pháp: Select * from A,B where A.field1 = B.field1 Select * from A,B where B.field1 = A.field1 Chú ý thứ tự phân tích quan hệ hình học ñối tượng: Select * from states, cities where states.obj contains cities.obj Select * from states, cities where cities.obj within states.obj Thứ tự lệnh không quan trọng 1.1.8 Tìm thông tin cột liệu–Sử dụng hàm InStr() Hàm InStr() tìm phần chuỗi ký tự chuỗi lớn Đây hàm số sử dụng với trường ký tự tìm vị trí ký tự ñặc biệt hay nhóm ký tự Ví dụ, Muốn chọn ñường tên có chuỗi “ie” trường tên ñường phố Set up your SQL Select statement as follows: Nếu InStr thực tìm thấy chuỗi “ie" trả lại vị trí lớn Cú pháp hàm INSTR sau: INSTR ( position, string, substring): position vị trí bắt ñầu tìm 78 Hướng dẫn thực tập GIS - Bài - Lựa chọn liệu phần mềm MapInfo string trường liệu chứa ký tự substring chuỗi ký tự cần tìm kiếm Chú ý Nếu chuỗi tìm thấy hàm trả lại số 1.1.9 Chọn ghi liệu chẵn hay lẻ 1.1.10 Tìm ghi có giá trị lặp lại cột Thường liệu tạo nên nhiều người Một số trường hợp liệu bị lặp lại ghi khác Điều thực SQL Ví dụ : Tìm thông tin lặp lại liệu Đầu tiên sử dụng SQL Select tạo table chất vấn với hai cột liệu.(sử dụng count(*)) 79 Hướng dẫn thực tập GIS - Bài - Lựa chọn liệu phần mềm MapInfo Cột ñầu tiên danh sách liệu cột Cột hai danh sách số lần liệu lặp lại 1.1.11 Tính khoảng cách tới ñiểm cố ñịnh Xác ñịnh vị trí ñiểm cố ñịnh X=?, Y=? Chọn Query > SQL Select Nhấn OK Sẽ nhận ñược kết khoảng cách từ ñối tượng ñồ tới ñiểm ñã chọn Lưu trữ kết Chọn liệu kết hợp nhiều tiêu chuẩn Sử dụng SQL select thực phân tích sau: 80 Hướng dẫn thực tập GIS - Bài - Lựa chọn liệu phần mềm MapInfo Tính mật ñộ dân số (theo toàn Thế giới, theo Châu lục, theo quốc gia) Phân tích sau: kết ñồ giới có quốc gia Thể kết chọn quốc gia có số dân (l n nh t, nh nh t) cho châu lục Thể kết phân tích liệu ñồ giới s qu c gia m i châu l c ? Thể kết phân tích tính liệu ñồ giới số qu c gia m i châu l c s p x p tăng d n ? Thể kết phân tích liệu ñồ giới Qu c gia có di n tích l n nh t m i châu l c ? Áp dụng cho ranh giới Việt Nam sử dụng SQL select thực phân tích sau: Thể kết tính diện tích theo vùng (Đông Nam Bộ, Tây nguyên, ĐBNB … ) Tìm ñịa phương có trạm khí tượng thủy văn Tìm ñịa phương có diện tích lớn theo khu vực Địa phương có diện tích (lớn nhất, nhỏ nhất) Việt nam Tìm ñịa phương trạm thủy văn Dựa theo số liệu cá nhân tính gộp theo nhóm số liệu theo vùng (năm 1995, 1996, 1997 vv ) 81 [...]... những thông tin lặp lại trong dữ liệu Đầu tiên sử dụng SQL Select tạo ra một table chất vấn với hai cột dữ liệu. (sử dụng count( *)) 79 Hướng dẫn thực tập GIS - Bài 7 - Lựa chọn dữ liệu trong phần mềm MapInfo Cột ñầu tiên danh sách các dữ liệu duy nhất trong cột Cột hai danh sách số lần dữ liệu lặp lại 1.1.11 Tính khoảng cách tới ñiểm cố ñịnh 1 Xác ñịnh vị trí ñiểm cố ñịnh X=?, Y=? Chọn Query > SQL Select...Hướng dẫn thực tập GIS - Bài 7 - Lựa chọn dữ liệu trong phần mềm MapInfo string là trường dữ liệu chứa ký tự substring là chuỗi ký tự cần tìm kiếm Chú ý Nếu không có chuỗi tìm thấy hàm trả lại số 0 1.1.9 Chọn những bản ghi dữ liệu chẵn hay lẻ 1.1.10 Tìm những bản ghi có giá trị lặp lại trong cột 1 Thường dữ liệu tạo nên bởi nhiều người Một số trường hợp dữ liệu bị lặp lại trong một bản ghi khác Điều... ñiểm ñã chọn 3 Lưu trữ kết quả Chọn dữ liệu kết hợp nhiều tiêu chuẩn Sử dụng SQL select thực hiện các phân tích sau: 80 Hướng dẫn thực tập GIS - Bài 7 - Lựa chọn dữ liệu trong phần mềm MapInfo Tính mật ñộ dân số (theo toàn Thế giới, theo từng Châu lục, theo từng quốc gia) Phân tích sau: kết quả trên bản ñồ thế giới có bao nhiêu quốc gia Thể hiện kết quả chọn quốc gia có số dân (l n nh t, nh nh t) cho... diện tích theo vùng (Đông Nam Bộ, Tây nguyên, ĐBNB … ) Tìm những ñịa phương có trạm khí tượng thủy văn Tìm những ñịa phương có diện tích lớn nhất theo từng khu vực Địa phương có diện tích (lớn nhất, nhỏ nhất) Việt nam Tìm những ñịa phương không có trạm thủy văn Dựa theo số liệu cá nhân tính gộp theo nhóm số liệu theo vùng (năm 1995, 1996, 19 97 vv ) 81 ... quả phân tích dữ liệu trên bản ñồ thế giới s qu c gia m i châu l c ? Thể hiện kết quả phân tích tính dữ liệu trên bản ñồ thế giới số qu c gia m i châu l c s p x p tăng d n ? Thể hiện kết quả phân tích dữ liệu trên bản ñồ thế giới Qu c gia có di n tích l n nh t m i châu l c ? Áp dụng cho ranh giới Việt Nam sử dụng SQL select thực hiện các phân tích sau: Thể hiện kết quả tính diện tích theo vùng (Đông ... Query 71 Hướng dẫn thực tập GIS - Bài - Lựa chọn liệu phần mềm MapInfo Xác ñịnh table chọn lựa Tạo biểu thức logic sử dụng chọn liệu Chọn cột chứa chất vấn liệu Để xem kết chọn, chọn ô Browse MapInfo. .. summarize) liệu qua ghi Khi nhóm liệu cần xác ñịnh: Những ghi nhóm Những liệu gộp 73 Hướng dẫn thực tập GIS - Bài - Lựa chọn liệu phần mềm MapInfo MapInfo có sáu hàm gộp liệu: Count( *), Sum (expression),... dẫn thực tập GIS - Bài - Lựa chọn liệu phần mềm MapInfo Chức Select cho phép chất vấn liệu lớp liệu Cho phép chọn lựa record ñối tượng từ lớp tùy thuộc vào tiêu chuẩn lựa chọn thuộc tính chúng