Usando union y order by clause en mysql

Quiero usar order by con union en mysql query. Estoy buscando diferentes tipos de registros basados en diferentes criterios de una tabla basada en la distancia para una búsqueda en mi sitio. La primera consulta de selección devuelve datos relacionados con la búsqueda exacta del lugar. La segunda consulta de selección devuelve datos relacionados con la distancia dentro de los 5 km del lugar buscado. La tercera consulta de selección devuelve datos relacionados con la distancia dentro de 5-15 kms desde el lugar buscado.

Luego estoy usando union para fusionar todos los resultados y mostrarlos en una página con paginación. Bajo el título apropiado como'Resultados de búsqueda exactos', 'Resultados dentro de 5 kms' etc.

Ahora quiero ordenar los resultados en función de id o add_date. Pero cuando agrego orden por cláusula al final de mi consulta (query1 union query 2 union query 3 ordenar por add_date). Ordena todos los resultados. Pero lo que quiero es que se clasifique debajo de cada encabezado.

Respuestas a la pregunta(9)

Su respuesta a la pregunta