Anda perlu memesan hasil, dan menetapkan batas.
Dengan asumsi datetime adalah apa yang ingin Anda pesan pada:
$query = "
SELECT
lat,
lng,
DATE_FORMAT(datetime,'%W %M %D, %Y %T') AS datetime
FROM markers1 WHERE 1
ORDER BY datetime DESC
LIMIT 5
";
EDIT: Untuk menjawab komentar OP:"hasil yang saya dapatkan adalah awal untuk Baris 50 untuk kueri pertama dan diikuti oleh 49,48,47,46 Apakah mungkin saya bisa mendapatkan awal ini dari baris 46,47,48,49,50 ?"
Anda bisa melakukan ini dengan hasil di PHP, dengan mengambil baris dan menyimpannya dalam array dan membalikkan array. Saya tidak yakin Anda dapat secara efisien mengulang sumber hasil mysql secara terbalik.
Untuk melakukan ini dalam kueri SQL, Anda perlu membuat tabel sementara dengan kueri asli:
$query = "
SELECT
lat,
lng,
DATE_FORMAT(datetime,'%W %M %D, %Y %T') AS datetime
FROM (
SELECT
lat,
lng,
datetime
FROM markers1 WHERE 1
ORDER BY datetime DESC
LIMIT 5
) AS tmp_markers
ORDER BY datetime ASC
";
Hasil dari kueri awal digunakan sebagai tabel untuk mencari kueri baru, yang diurutkan berdasarkan waktu dan waktu naik. Saya harus menerapkan DATE_FORMAT pada kueri luar karena kami memerlukan bidang tanggal waktu untuk memesan lagi.