Count
Siminov Framework edited this page Jan 16, 2016
·
9 revisions
Exposes API's to get count of the number of times that X is not NULL in a group. The count(*) function (with no arguments) returns the total number of rows in the group.
public ICount count() throws DatabaseException;
- Android: ICount
public interface ICount {
public ICount distinct();
public ICountClause where(String column);
public ICount whereClause(String whereClause);
public ICountClause and(String column);
public ICountClause or(String column);
public ICount groupBy(String...columns);
public ICountClause having(String column);
public ICount havingClause(String havingClause);
public ICount column(String column);
public Object execute() throws DatabaseException;
}
- Android: ICountClause
public interface ICountClause {
public ICount equalTo(String value);
public ICount notEqualTo(String value);
public ICount greaterThan(String value);
public ICount greaterThanEqual(String value);
public ICount lessThan(String value);
public ICount lessThanEqual(String value);
public ICount between(String start, String end);
public ICount like(String like);
public ICount in(String...values);
}
int count = 0;
try {
count = new Book().count().where(Book.TITLE).equalTo("C").execute();
} catch(DatabaseException de) {
//Log it.
}
- (id<SICICount>)count;
- iOS: ICount
@protocol SICICount <NSObject>
- (id<SICICount>)distinct;
- (id<SICICountClause>)where:(NSString *)column;
- (id<SICICount>)whereClause:(NSString *)whereClause;
- (id<SICICountClause>)and:(NSString *)column;
- (id<SICICountClause>)or:(NSString *)column;
- (id<SICICount>)groupBy:(NSArray *)columns;
- (id<SICICountClause>)having:(NSString *)column;
- (id<SICICount>)havingClause:(NSString *)havingClause;
- (id<SICICount>)column:(NSString *)column;
- (id)execute;
@end
- iOS: SICICountClause
@protocol SICICountClause <NSObject>
- (id<SICICount>)equalTo:(id)value;
- (id<SICICount>)notEqualTo:(id)value;
- (id<SICICount>)greaterThan:(id)value;
- (id<SICICount>)greaterThanEqual:(id)value;
- (id<SICICount>)lessThan:(id)value;
- (id<SICICount>)lessThanEqual:(id)value;
- (id<SICICount>)between:(id)start end:(id)end;
- (id<SICICount>)like:(id)like;
- (id<SICICount>)in:(id)values;
@end
int count = 0;
@try {
count = [[[[[[Book alloc] init] count] where:[Book TITLE]] equalTo:@"C"] execute];
} @catch(SICDatabaseException *databaseException) {
//Log it.
}
public ICount Count();
- Windows: ICount
public interface ICount
{
ICount Distinct();
ICountClause Where(String column);
ICount WhereClause(String whereClause);
ICountClause And(String column);
ICountClause Or(String column);
ICount GroupBy(String[] columns);
ICountClause Having(String column);
ICount HavingClause(String havingClause);
ICount Column(String column);
int execute();
}
- Windows: ICountClause
public interface ICountClause
{
ICount EqualTo(String value);
ICount NotEqualTo(String value);
ICount GreaterThan(String value);
ICount GreaterThanEqual(String value);
ICount LessThan(String value);
ICount LessThanEqual(String value);
ICount Between(String start, String end);
public ICount Like(String like);
public ICount In(String[] values);
}
int count = 0;
try
{
count = new Book().Count().Where(Book.TITLE).EqualTo("C").Execute();
}
catch(DatabaseException de)
{
//Log it.
}
this.count = function();
- JavaScript: ICount
function ICount() {
this.distinct = function();
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: ICountClause
function ICountClause() {
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);
}
/** Count Sample **/
int count = 0;
try {
count = new Book().count().where(Book.TITLE).equalTo("C").execute();
} catch(de) {
//Log it.
}
/** Count Async Sample **/
var callback = new Callback();
callback.onSuccess = function(count) {
}
new Book().count().executeAsync(callback);
/** Count Async Transaction Sample **/
var callback = new Callback();
callback.onExecute = function(transaction) {
var countCallback = new Callback();
countCallback.onSuccess = function() {
}
new Book().count().executeAsync(countCallback, transaction);
}
callback.onSuccess = function() {
}
var databaseDescriptor = new Lession().getDatabaseDescriptor();
Database.beginTransactionAsync(databaseDescriptor, callback);