Here:
select distance(latitude, longitude, 51.4503729, 4.4914635) as distance
from cities where distance < 20
< 20 is in KM or MI?
Thanks!
Em sexta-feira, 4 de abril de 2014 09h10min15s UTC-3, sANTo L escreveu:
>
> Hi,
>
> What is the correct / recommended way to use the result of distance() in a
> where clause ?
>
> I know I can do something like this:
> select distance(latitude, longitude, 51.4503729, 4.4914635) as distance
> from cities
>
> But I can't do this:
> select distance(latitude, longitude, 51.4503729, 4.4914635) as distance
> from cities where distance < 20
>
> Of course I could do this:
> select distance(latitude, longitude, 51.4503729, 4.4914635) as distance
> from cities where distance(latitude, longitude, 51.4503729, 4.4914635) < 20
>
> But I can't imagine that would be the most optimal/recommended way, is it ?
>
>
> Also, how can I send this distance value back together with the record
> itself when using the java OrientGraph API ?
>
> Normally I'm doing something like this:
>
> OSQLAsynchQuery<Vertex> asyncQuery = new
> OSQLAsynchQuery<Vertex>("select from cities where distance(latitude,
> longitude, 51.4503729, 4.4914635) < 20");
> OCommandResultListener asyncListener = new
> OCommandResultListener() {
> int resultCount = 0;
> @Override
> public boolean result(Object iRecord) {
> resultCount++;
> Vertex doc = graphDb.getVertex(iRecord);
> System.out.println("new record received (" + resultCount +
> ")");
> System.out.println(">> zipcode: " +
> doc.getProperty("zipcode"));
> return true;
> }
>
> @Override
> public void end() {
> System.out.println("All records received: " + resultCount);
> }
> };
>
> But how do I add the distance to this ?
> I could probably use something like this for the query: "select @this,
> distance(latitude, longitude, 51.4503729, 4.4914635) as distance from
> cities"
>
> But what would be the result type in this case ?
>
> Or do I have to perform separate querries for this (which would cause a
> significant overhead) ?
>
>
> regards,
>
> Santo
>
--
---
You received this message because you are subscribed to the Google Groups
"OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.