Làm cách nào để lấy cơ sở dữ liệu mysql của tôi trả về 0 nếu vùng lân cận trong mệnh đề WHERE không tồn tại? Vì vậy, trong ví dụ dưới đây, Old Town không có trong cơ sở dữ liệu. Tôi muốn cơ sở dữ liệu trả lại 0 sự cố thay vì kết quả trống.Làm cách nào để tôi trả về 0 Từ một db của MySQL Khi thuật ngữ trong khoản ở đâu không có trong cơ sở dữ liệu?
SELECT incidents,
neighborhoods
FROM `myTable`
WHERE neighborhoods ='Old Town'
Tôi cũng đã cố gắng
SELECT IFNULL(incidents,0),
IFNULL(neighborhoods,0)
FROM `myTable`
WHERE neighborhoods ='Old Town'
Bất kỳ đề xuất sẽ được thực sự đánh giá cao.
Nói chung mọi người là hoàn toàn nội dung nhận lại một tập kết quả có sản phẩm nào khi có không có bản ghi phù hợp trong cơ sở dữ liệu. Tại sao đây là một vấn đề cho bạn? Bạn đang cố gắng làm gì ở đây? – Asaph
Hi Asaph, Cảm ơn bạn đã gửi thư. Tôi đã đơn giản hóa ví dụ của tôi một chút. Về cơ bản, tôi đang lựa chọn từ một số bảng, làm cho trung bình của sự cố và sau đó lặp lại quá trình này với các bảng khác, và sau đó trả lại toàn bộ kết quả cho ứng dụng Flex của tôi. Vì vậy, mã của tôi hoạt động, ngoại trừ khi vùng lân cận không tồn tại trong bảng. Tôi cũng đã có một vấn đề khi tính trung bình (SELECT ROUND ((SUM (sự cố)/4), 1) AS avg_annual_incidents ... nơi tôi có thể có 0/4 tôi là giới hạn trong số những nhân vật tôi được phép trong thông báo này, tôi sẽ đăng bài viết khác Cảm ơn -Laxmidi – Laxmidi
Hi Asaph, mã của tôi trông giống như sau:.. $ query = "(SELECT ROUND ((SUM (sự cố)/4.087), 1) AS avg_annual_incidents, khu dân cư, 'ADW' như hành vi phạm tội TỪ ( SELECT * FROM ' adw_2009_incident_location' UNION ALL SELECT * FROM' adw_2008_incident_location' UNION ALL SELECT * FROM ' adw_2007_incident_location' union all select * FROM 'adw_2006_incident_location' UNION ALL SELECT * TỪ adw_jan1_feb1_2010_incident_location ) AS combo nơi hàng xóm = '$ neighborhood_id' GROUP BY vùng lân cận) UNION ALL (nó tiếp tục trong cùng một khuôn mẫu với các bảng khác nhau hơn 6 lần). – Laxmidi