Skip to content
Siminov Framework edited this page Jan 16, 2016 · 10 revisions

Group Concat

Exposes API's to get group concat that returns a string which is the concatenation of all non-NULL values of X. If parameter Y is present then it is used as the separator between instances of X. A comma (",") is used as the separator if Y is omitted. The order of the concatenated elements is arbitrary.

Android API: Group Concat

    public IGroupConcat groupConcat() throws DatabaseException;
  • Android: IGroupConcat Interface
    
    public interface IGroupConcat {

        public IGroupConcat delimiter(String delimiter);
	
        public IGroupConcatClause where(String column);
	
        public IGroupConcat whereClause(String whereClause);
	
        public IGroupConcatClause and(String column);
	
        public IGroupConcatClause or(String column);

        public IGroupConcat groupBy(String...columns);
	
        public IGroupConcatClause having(String column);

        public IGroupConcat havingClause(String havingClause);
	
        public IGroupConcat column(String column);
	
        public Object execute() throws DatabaseException;

    }
  • Android: IGroupConcatClause Interface
    public interface IGroupConcatClause {

        public IGroupConcat equalTo(String value);

        public IGroupConcat notEqualTo(String value);
	
        public IGroupConcat greaterThan(String value);
	
        public IGroupConcat greaterThanEqual(String value);
	
        public IGroupConcat lessThan(String value);
	
        public IGroupConcat lessThanEqual(String value);
	
        public IGroupConcat between(String start, String end);
	
        public IGroupConcat like(String like);
	
        public IGroupConcat in(String...values);

    }
Android Sample: Group Concat
    int groupConcat = 0;
	
    try {
        groupConcat = new Book().groupConcat().column(Book.COLUMN_NAME_WHICH_CONTAIN_NUMBRIC_VALUE).where(Book.TITLE).equalTo("C").execute();				
    } catch(DatabaseException de) {
		//Log it.
    }

iOS API: Group Concat

    - (id<SICIGroupConcat>)groupConcat;
  • iOS: SICIGroupConcat Interface
    @protocol SICIGroupConcat <NSObject>

    - (id<SICIGroupConcat>)delimiter:(NSString *)delimiter;

    - (id<SICIGroupConcatClause>)where:(NSString *)column;

    - (id<SICIGroupConcat>)where:(NSString *)whereClause;

    - (id<SICIGroupConcatClause>)and:(NSString *)column;

    - (id<SICIGroupConcatClause>)or:(NSString *)column;

    - (id<SICIGroupConcat>)groupBy:(NSArray *)columns;

    - (id<SICIGroupConcatClause>)having:(NSString *)column;

    - (id<SICIGroupConcat>)havingClause:(NSString *)havingClause;

    - (id<SICIGroupConcat>)column:(NSString *)column;

    - (id)execute;

    @end
  • iOS: SICIGroupConcatClause Interface
    @protocol SICIGroupConcatClause <NSObject>

    - (id<SICIGroupConcat>)equalTo:(id)value;

    - (id<SICIGroupConcat>)notEqualTo:(id)value;

    - (id<SICIGroupConcat>)greaterThan:(id)value;

    - (id<SICIGroupConcat>)greaterThan:(id)value;

    - (id<SICIGroupConcat>)lessThan:(id)value;

    - (id<SICIGroupConcat>)lessThan:(id)value;

    - (id<SICIGroupConcat>)between:(id)start end:(id)end;

    - (id<SICIGroupConcat>)like:(id)like;

    - (id<SICIGroupConcat>)in:(id)values;

    @end
iOS Sample: Get Group Concat
    NSString *groupConcat = 0;
	
    @try {
        groupConcat = [[[[[[[Book alloc] init] groupConcat] column:[Book COLUMN_NAME_WHICH_CONTAIN_NUMBRIC_VALUE]] where:[Book TITLE]] equalTo:@"C"] execute];
    } @catch(SICDatabaseException *databaseException) {
		//Log it.
    }
Windows API: Group Concat
    public IGroupConcat GroupConcat();
  • Windows: IGroupConcat Interface
    public interface IGroupConcat 
    {

        IGroupConcat Delimiter(String delimiter);
	
        IGroupConcatClause Where(String column);
	
        IGroupConcat WhereClause(String whereClause);
	
        IGroupConcatClause And(String column);
	
        IGroupConcatClause Or(String column);

        IGroupConcat GroupBy(String[] columns);
	
        IGroupConcatClause Having(String column);

        IGroupConcat HavingClause(String havingClause);
	
        IGroupConcat Column(String column);
	
        String Execute();

    }
  • Windows: IGroupConcatClause Interface
    public interface IGroupConcatClause 
    {

        IGroupConcat EqualTo(String value);

        IGroupConcat NotEqualTo(String value);
	
        IGroupConcat GreaterThan(String value);
	
        IGroupConcat GreaterThanEqual(String value);
	
        IGroupConcat LessThan(String value);
	
        IGroupConcat LessThanEqual(String value);
	
        IGroupConcat Between(String start, String end);
	
        IGroupConcat Like(String like);
	
        IGroupConcat In(String[] values);

    }
Windows Sample: Get Group Concat
    String groupConcat = 0;
	
    try 
    {
        groupConcat = new Book().GroupConcat().Column(Book.COLUMN_NAME_WHICH_CONTAIN_NUMBRIC_VALUE).Where(Book.TITLE).EqualTo("C").Execute();				
    } 
    catch(DatabaseException de) 
    {
		//Log it.
    }
JavaScript API: Group Concat
    this.groupConcat = function();
  • JavaScript: IGroupConcat Interface
    function IGroupConcat() {

        this.delimiter = function(delimiter);
	
        this.where = function(column);
	
        this.whereClause = function(whereClause);
	
        this.and = function(column);
	
        this.or = function(column);

        this.groupBy = function(columns);
	
        this.having = function(column);

        this.havingClause = function(havingClause);
	
        this.column = function(column);
	
        this.execute = function();

        this.executeAsync = function(callback, transaction);

    }
  • JavaScript: IGroupConcatClause Interface
    function IGroupConcatClause() {

        this.equalTo = function(value);

        this.notEqualTo = function(value);
	
        this.greaterThan = function(value);
	
        this.greaterThanEqual = function(value);
	
        this.lessThan = function(value);
	
        this.lessThanEqual = function(value);
	
        this.between = function(start, end);
	
        this.like = function(like);
	
        this.in = function(values);

    }
JavaScript Sample: Get Group Concat
            /** Group Concat Sample **/

    var groupConcat = 0;
	
    try {
        groupConcat = new Book().groupConcat().column(Book.COLUMN_NAME_WHICH_CONTAIN_NUMBRIC_VALUE).where(Book.TITLE).equalTo("C").execute();				
    } catch(de) {
		//Log it.
    }
            /** Group Concat Async Sample **/

    var callback = new Callback();
    callback.onSuccess = function(groupConcat) {

    }

    new Book().groupConcat().executeAsync(callback);
            /** Group Concat Async Transaction Sample **/

    var callback = new Callback();
    callback.onExecute = function(transaction) {

        var groupConcatCallback = new Callback();
        groupConcatCallback.onSuccess = function() {

        }

        new Book().groupConcat().executeAsync(groupConcatCallback, transaction);
    }

    callback.onSuccess = function() {

    }

    var databaseDescriptor = new Lession().getDatabaseDescriptor();
    Database.beginTransactionAsync(databaseDescriptor, callback);