aynı şehirde yaşasak şunu yazmak için çay ısmarlatırdım.
Showing rows 0 - 4 ( 5 total, Query took 0.0022 sec)
SELECT SQL_CACHE CONCAT('ilId=',il.id,'&ilceId=0&semtId=0&mahalleId =0') AS s1, il.il_adi AS s2 FROM il WHERE il.il_adi LIKE 'beyoğlu%' LIMIT 2
UNION
SELECT CONCAT('ilId=',il.id,'&ilceId=',ilce.id,'&semtId=0 &mahalleId=0') AS s1, CONCAT_WS(', ',il.il_adi,ilce.ilce_adi) AS s2 FROM ilce INNER JOIN il ON ilce.il_id = il.id WHERE ilce.ilce_adi LIKE 'beyoğlu%' LIMIT 3
UNION
SELECT CONCAT('ilId=',il.id,'&ilceId=',ilce.id,'&semtId=' ,semt.id,'&mahalleId=0') AS s1, CONCAT_WS(', ',il.il_adi,ilce.ilce_adi,semt.semt_adi) AS s2 FROM semt INNER JOIN ilce ON ilce.id = semt.ilce_id INNER JOIN il ON il.id = semt.il_id WHERE semt.semt_adi LIKE 'beyoğlu%' LIMIT 3
UNION
SELECT CONCAT('ilId=',il.id,'&ilceId=',ilce.id,'&semtId=' ,semt.id,'&mahalleId=',mahalle.id) AS s1, CONCAT_WS(', ',il.il_adi,ilce.ilce_adi,semt.semt_adi,mahalle.ma halle_adi) AS s2 FROM mahalle INNER JOIN semt ON mahalle.semt_id=semt.id INNER JOIN ilce ON ilce.id = semt.ilce_id INNER JOIN il ON il.id = ilce.il_id WHERE mahalle.mahalle_adi LIKE 'beyoğlu%' LIMIT 10
s1 s2
ilId=34&ilceId=419&semtId=0&mahalleId=0 İstanbul, Beyoğlu
ilId=46&ilceId=640&semtId=2915&mahalleId=0 Kahramanmaraş, Türkoğlu, Beyoğlu
ilId=55&ilceId=733&semtId=3318&mahalleId=37362 Samsun, Tekkeköy, Köyler, Beyoğlu Köyü
ilId=59&ilceId=788&semtId=3486&mahalleId=41023 Tekirdağ, Şarköy, Köyler, Beyoğlu Köyü
ilId=76&ilceId=927&semtId=4024&mahalleId=49568 Iğdır, Tuzluca, Gaziler, Beyoğlu Köyü
---
union birleştirme sorgularına özel SQL_CACHE gibi bir özellik gireceksen ilk sorguya gireceksin. diğerleri otomatik olarak etkilenirler.
limit olayında en son sorguda ki limit toplam limittir.
ben 10 verdim, bu mahallenin limiti değildir. mahallenin limiti 10-2-3-3 = 2 dir.
ayrıca il için sonuç olmadığında limit sondaki kaydırılır. mahalle limiti 4 olur gibi.
sorguyu elimle yazdım birleştirmeleri kontrol edin tekrar.
iyi çalışmalar
böyle bir sonuçla karşılaşırım artık gerisi semt_id ,ilce_id,il_id ile illeri ve diğer detayları çekmeme yarar bunu jquery ilede güzel bir live search yaparsın onuda özetliyim sana ; 
