feno tudo .. Eu tenho uma tabela de clientes no meu banco de dados Android .. Eu estou usando atualmente persistência quarto, eu estou olhando para levar todos os meus dados de clientes ... mas sequencial do local de partida para mais próximo de mim no momento .. como consultar para o meu exemplo de caso .. Minha latitude atual é -7,3530829, minha longitude é atualmente 112,6901788
data in my customers table
customers.address = "Waterpark Boulevard Citraland Area
customers.handphone1 = "0857887328"
customers.latitude = -7.2864881
customers.longitude = 112.6525076
data in my customers table
customers.address = "Nature Conservation Area
customers.handphone1 = "0857887328"
customers.latitude = -7.3571553
customers.longitude = 112.6862058
data in my customers table
customers.address = "Kawasan Taman Pinang
customers.handphone1 = "0857887328"
customers.latitude =
-7.3403807
customers.longitude = 112.6914085
//get Data by Name,,
@Query("SELECT * FROM customers WHERE name = :name")
abstract fun findByName(name:String): MutableList<Customers>
//How to retrieve data based on the closest distance ?
@Query("SELECT ???")
abstract fun findByDistance(mylatitude:Double,mylongitude:Double): MutableList<Customers>
por favor ajude a encontrar a consulta de distância.
Respostas:
0 para resposta № 1Eu encontrei a consulta certa calculando a distância direta.
@Query("SELECT * FROM customers ORDER BY ABS(latitude - :latitude) + ABS(longitude - :longitude) ASC")
abstract fun findByDistance(latitude:Double,longitude:Double): MutableList<Customers>
Talvez isso possa ajudar você que precisa da mesma coisa que eu .. obrigada ..