How to get all objects younger thaт another object?

Hello.
I want to get all objects from table that created later than another object.
How can I do it with backendless android sdk?

Hi Adam,

Here’s an example which demonstrates how to do that (the example is for standalone Java, the code for Android would be almost identical with the exception of async callbacks):

    Order lastOrder = Backendless.Data.of( Order.class ).findLast();
    System.out.println( "Last order update time " + lastOrder.getUpdated() );


    SimpleDateFormat dateFormat = new SimpleDateFormat( "MM.dd.yyyy HH:mm:ss" );
    String updateDateStr = dateFormat.format( lastOrder.getUpdated() );


    String whereQuery = "created < date('" + updateDateStr + "')";
    BackendlessDataQuery query = new BackendlessDataQuery( whereQuery );


    BackendlessCollection&lt;Order&gt; orders = Backendless.Data.of( Order.class ).find( query );
    List&lt;Order&gt; firstPage = orders.getCurrentPage();


    for( Order order : firstPage )
      System.out.println( order.getName() + " created - " + order.getCreated() );

My Order class looks like this:

package com.backendless.sample;


import java.util.ArrayList;
import java.util.Date;
import java.util.List;


public class Order
{
  private String objectId;
  private String name;
  private List&lt;OrderItem&gt; items;
  private Date created;
  private Date updated;


  public String getObjectId()
  {
    return objectId;
  }


  public void setObjectId( String objectId )
  {
    this.objectId = objectId;
  }


  public Date getUpdated()
  {
    return updated;
  }


  public void setUpdated( Date updated )
  {
    this.updated = updated;
  }


  public String getName()
  {
    return name;
  }


  public void setName( String name )
  {
    this.name = name;
  }


  public void addItem( OrderItem item )
  {
    if( items == null )
      items = new ArrayList&lt;OrderItem&gt;();


    items.add( item );
  }


  public List&lt;OrderItem&gt; getItems()
  {
    return items;
  }


  public void setItems( List&lt;OrderItem&gt; items )
  {
    this.items = items;
  }


  public Date getCreated()
  {
    return created;
  }


  public void setCreated( Date created )
  {
    this.created = created;
  }


  @Override
  public String toString()
  {
    return "Order{" +
            "name='" + name + '\'' +
            ", items=" + items +
            ", created=" + created +
            ", updated=" + updated +
            '}';
  }
}

I also attached a screenshot which shows the schema of the Order table.

Regards,
Mark

Hi Mark.
Your query return me all objects in table.
I try it also in backendless account.

Hi Adam,

Supported formats are:

MM.dd.yyyy HH:mm:ss
MM-dd-yyyy HH:mm:ss
yyyy-MM-dd hh:mm:ss

It is confusing in your specific scenario is because the dates are being displayed in a non-US (European) format where the date comes first, then month. However in the query you need to follow the formats I showed above. So if you swap 09 and 03, it should work as expected ))

Regards,
Mark

Yeah. Now it work perfectly!
Thank you very much, Mark.