Tìm kiếm phòng trọ theo diện tích
The query retrieves distinct information about rental properties, including the rental price, area, and address It also lists utility costs such as electricity, water, Wi-Fi, and parking fees Additionally, it provides details on the number of occupants, type of accommodation, gender preferences, and the landlord's information, including their address, name, and phone number.
FROM public.chiphi_sinhhoat, public.thongtin_chutro, public.thongtin_phongtro,
WHERE thongtin_phongtro.dientich> and thongtin_phongtro.dientich15 and thongtin_phongtro.giaphong 3 and
- Kết quả truy vấn như hình 10.
Hình 10 Kết quả truy vấn theo kết hợp diện tích, giá phòng và số người ở tối đa
Tìm kiếm phòng trọ theo kết hợp diện tích, giá phòng, số người ở tối đa và loại hình trọ
đa và loại hình trọ
The query retrieves distinct information about rental properties, including the price, area, and address of the room, as well as utility costs such as electricity, water, Wi-Fi, and parking fees It also provides details on the number of occupants, type of accommodation, gender preferences, and the landlord's contact information, including their name and phone number.
FROM public.chiphi_sinhhoat, public.thongtin_chutro, public.thongtin_phongtro,
WHERE thongtin_phongtro.songuoi > 3 and thongtin_phongtro.loaihinhtr like 'ở riêng' and thongtin_chutro.id_chutro=thongtin_phongtro.id_phongtro and thongtin_phongtro.id_phongtro=chiphi_sinhhoat.id_chiphi
- Kết quả truy vấn như hình 11.
Hình 11.Kết quả truy vấn theo kết hợp diện tích, giá phòng, số người ở tối đa và loại hình trọ
Tìm kiếm phòng trọ theo kết hợp diện tích, giá phòng, số người ở tối đa, loại hình trọ và quy định giờ giấc
ở tối đa, loại hình trọ và quy định giờ giấc - Câu truy vấn
This query retrieves distinct information about rental properties, including the price, area, and address, along with utility costs such as electricity, water, Wi-Fi, and parking fees It also provides details about the number of occupants, type of accommodation, gender preferences, and house rules Additionally, the landlord's contact information, including their address, name, and phone number, is included in the results.
The query retrieves data from the 'public.chiphi_sinhhoat' and 'thongtin_phongtro' tables, focusing on rental properties with specific criteria: a living area greater than 15 square meters, a rental price below 3, accommodations for more than 3 people, a preference for private living arrangements, and a requirement for regulated pricing Additionally, it ensures that the landlord's ID matches the property ID and that the property ID corresponds with the living expense ID.
Hình 12 Kết quả truy vấn theo kết hợp diện tích, giá phòng, số người ở tối đa, loại hình trọ và quy định giờ giấc
PHỤ LỤC 3: QUY TRÌNH XÂY DỰNG TẦNG GIAO DỊCH
Quy trình xây dựng tầng giao dịch bằng Geoserver đã được nêu ở mục 4.1. chương 4 của báo cáo Sau đây là các bước cụ thể:
Sau khi cài xong phần mềm, mở cửa sổ “Start Geoserver”, khi chạy xong như hình 13 thì Geoserver mới mở được.
Hình 13 Cửa sổ Start Geoserver
Để truy cập Geoserver, bạn cần sử dụng trình duyệt web và nhập địa chỉ localhost:8080, nơi 8080 là cổng đã được cài đặt trong quá trình thiết lập Sau đó, hãy đăng nhập vào hệ thống bằng tên người dùng và mật khẩu mà bạn đã cấu hình trong quá trình cài đặt.
- Bước 2: Tạo Workspace là vùng làm việc trên
Geoserver Lần lượt thực hiện theo thứ tự 1, 2, 3 như hình
3: Nhập tên và đường dẫn URI của Workspace.
Sau đó bấm Submit để hoàn thành Như vậy, một Workspace đã được tạo.
Hình 14 Các bước tạo Workspace
- Bước 3: Tạo Stores để chứa dữ liệu.
Lần lượt thực hiện các thao tác 1,2,3 như hình 15:
3:Chọn loại nguồn dữ liệu Trong đề tài này ta sử dụng dữ liệu PostGIS nên sẽ chọn PostGIS.
Hình 15 Các bước tạo Stores
After selecting PostGIS, choose the Workspace you created, enter the Database name, and click Save Geoserver will then display the layers of the database Next, select Publish for the necessary layers.
Sau khi nhấn Publish, cần điền thông số hệ tọa độ cho Layer Vì dữ liệu sử dụng hệ tọa độ WGS 84, chọn EPSG:4326 cho ô Native SRS và ô Declared SRS Tiếp theo, cập nhật phần Bounding Boxes bằng cách nhấp vào Compute from data và Compute from native bounds để tính toán khung bản đồ Cuối cùng, nhấn Save để hoàn tất việc tạo Layer.
Hình 16 Điền các thông số
Để hiển thị bản đồ một cách đẹp mắt, bước 4 là tạo style cho các layer dựa trên loại dữ liệu Dữ liệu dạng điểm sẽ sử dụng kiểu style point, dữ liệu dạng vùng sẽ áp dụng kiểu style polygon, trong khi dữ liệu dạng đường sẽ cần kiểu style line Geoserver cung cấp nhiều kiểu style đơn giản có sẵn, nhưng nếu cần thiết kế style phù hợp hơn với dữ liệu, người dùng có thể tạo style mới.
Thực hiện các thao tác theo thứ tự 1, 2, 3 như hình 17:
3: Đặt tên style và chọn workspace
Để tạo kiểu style cho thông tin phòng trọ, sinh viên đã thiết kế kiểu style point nhằm hiển thị dữ liệu dưới dạng icon Kết quả hiển thị được thể hiện rõ ràng trong hình 18.
Hình 18 Hiển thị đối tượng dạng điểm
PHỤ LỤC 4: QUÁ TRÌNH XÂY DỰNG CHỨC NĂNG TÌM KIẾM Đề tài sử dụng ngôn ngữ Python để hỗ trợ lập trình các chức năng cho trang web.
Kết nối cơ sở dữ liệu
Kết nối cơ sở dữ liệu bằng ngôn ngữ Python, lưu tên file là config.py
Đọc các trường thuộc tính của các bảng có trong CSDL
Đọc các trường thuộc tính của các bảng trong CSDL bằng ngôn ngữ python và lưu file models.py
Truy vấn dữ liệu theo các điều kiện
- Truy vấn dữ liệu về Quận. Điều kiện để truy vấn CSDL về Quận bằng ngôn ngữ HTML.
Quận 1 có giá trị cao nhất trong danh sách, tiếp theo là quận 2 với giá trị 1, quận 3 có giá trị 2 Quận 4 và quận 5 lần lượt có giá trị 3 và 4 Quận 6 đạt giá trị 5, trong khi quận 7 có giá trị 6 Quận 8 có giá trị 7, quận 9 có giá trị 8, và quận 10 có giá trị 9 Các quận 11, 12, Thủ Đức, Bình Thạnh, Tân Bình, Tân Phú, Gò Vấp và Phú Nhuận cũng có giá trị nhưng chưa được xác định cụ thể.
Truy vấn cơ sở dữ liệu về các quận bằng câu lệnh SQL có thể được thực hiện thông qua ngôn ngữ Python Cụ thể, khi giá trị là 18, truy vấn SQL sẽ trả về địa chỉ Quận 1; với giá trị 1, địa chỉ là Quận 2; giá trị 2 tương ứng với Quận 3; giá trị 3 tương ứng với Quận 4; giá trị 4 tương ứng với Quận 5; giá trị 5 tương ứng với Quận 6; giá trị 6 tương ứng với Quận 7; giá trị 8 tương ứng với Quận 9; giá trị 10 tương ứng với Quận 11; giá trị 11 tương ứng với Quận 12; giá trị 12 tương ứng với Quận Thủ Đức; và cuối cùng, giá trị 13 sẽ trả về địa chỉ Quận Bình Thạnh.
14 thì truy vấn SQL lấy địa chỉ là Quận Tân Bình.
- Truy vấn dữ liệu về Diện tích Điều kiện để truy vấn CSDL về diện tích bằng ngôn ngữ HTML.
Truy vấn CSDL về Diện tích bằng câu lệnh SQL, ứng với mỗi giá trị thì truy vấn đền CSDL tương ứng bằng ngôn ngữ Python.
- Truy vấn dữ liệu về Giá Điều kiện để truy vấn CSDL về phòng giá phòng bằng ngôn ngữ HTML.
Truy vấn CSDL về Giá phòng bằng câu lệnh SQL, ứng với mỗi giá trị thì truy vấn đền CSDL tương ứng.
- Truy vấn dữ liệu về Số người ở tối đa Điều kiện để truy vấn CSDL về Số người ở tối đa
Truy vấn CSDL về Số người ở tối đa bằng câu lệnh SQL, ứng với mỗi giá trị thì truy vấn đền CSDL tương ứng bằng ngôn ngữ Python.
- Truy vấn dữ liệu về Loại hình trọ Điều kiện để truy vấn CSDL về Loại hình trọ
- Truy vấn dữ liệu về Giờ giấc quy định Điều kiện để truy vấn CSDL về Giờ giấc quy định
Truy vấn CSDL về Giờ giấc quy định bằng câu lệnh SQL, ứng với mỗi giá trị thì truy vấn đền CSDL tương ứng bằng ngôn ngữ Python.
- Truy vấn dữ liệu về đối tượng tiện ích Điều kiện để truy vấn CSDL về đối tượng tiện ích
Truy vấn CSDL về Số người ở tối đa bằng câu lệnh SQL, ứng với mỗi giá trị thì
Để truy vấn dữ liệu về khoảng cách từ phòng trọ đến các tiện ích, cần xác định các điều kiện cần thiết cho việc truy vấn cơ sở dữ liệu Điều này bao gồm việc xác định vị trí của phòng trọ và các tiện ích, cũng như cách thức tính toán khoảng cách giữa chúng Việc xây dựng một truy vấn hiệu quả sẽ giúp người dùng dễ dàng tìm kiếm và so sánh các lựa chọn phòng trọ dựa trên khoảng cách đến các tiện ích cần thiết.
Để truy vấn cơ sở dữ liệu về khoảng cách từ phòng trọ tới các tiện ích, bạn có thể sử dụng câu lệnh SQL để lấy dữ liệu tương ứng Mỗi giá trị khoảng cách sẽ được truy vấn qua ngôn ngữ lập trình Python, giúp tối ưu hóa quá trình xử lý và phân tích thông tin.