objective-c-sql-query-builder
ZIMOrmSelectStatement.h
Go to the documentation of this file.
00001 /*
00002  * Copyright 2011-2015 Ziminji
00003  *
00004  * Licensed under the Apache License, Version 2.0 (the "License");
00005  * you may not use this file except in compliance with the License.
00006  * You may obtain a copy of the License at:
00007  * 
00008  *    http://www.apache.org/licenses/LICENSE-2.0
00009  *
00010  * Unless required by applicable law or agreed to in writing, software
00011  * distributed under the License is distributed on an "AS IS" BASIS,
00012  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013  * See the License for the specific language governing permissions and
00014  * limitations under the License.
00015  */
00016 
00017 #import "ZIMSqlStatement.h"
00018 #import "ZIMSqlSelectStatement.h"
00019 
00026 @interface ZIMOrmSelectStatement : NSObject <ZIMSqlStatement> {
00027 
00028         @protected
00029                 Class _model;
00030                 ZIMSqlSelectStatement *_sql;
00031 
00032 }
00040 - (instancetype) initWithModel: (Class)model;
00047 - (void) join: (id)table;
00055 - (void) join: (id)table type: (NSString *)type; // type of JOIN: CROSS, INNER, LEFT, etc.
00063 - (void) join: (id)table alias: (NSString *)alias;
00072 - (void) join: (id)table alias: (NSString *)alias type: (NSString *)type; // type of JOIN: CROSS, INNER, LEFT, etc.
00081 - (void) joinOn: (id)column1 operator: (NSString *)operator column: (id)column2;
00091 - (void) joinOn: (id)column1 operator: (NSString *)operator column: (id)column2 connector: (NSString *)connector;
00100 - (void) joinOn: (id)column operator: (NSString *)operator value: (id)value;
00110 - (void) joinOn: (id)column operator: (NSString *)operator value: (id)value connector: (NSString *)connector;
00117 - (void) joinUsing: (NSString *)column;
00124 - (void) whereBlock: (NSString *)brace;
00132 - (void) whereBlock: (NSString *)brace connector: (NSString *)connector;
00141 - (void) where: (id)column1 operator: (NSString *)operator column: (id)column2;
00151 - (void) where: (id)column1 operator: (NSString *)operator column: (id)column2 connector: (NSString *)connector;
00160 - (void) where: (id)column operator: (NSString *)operator value: (id)value; // wrap primitives with NSNumber
00170 - (void) where: (id)column operator: (NSString *)operator value: (id)value connector: (NSString *)connector; // wrap primitives with NSNumber
00177 - (void) groupBy: (NSString *)column;
00184 - (void) groupByHavingBlock: (NSString *)brace;
00192 - (void) groupByHavingBlock: (NSString *)brace connector: (NSString *)connector;
00201 - (void) groupByHaving: (id)column1 operator: (NSString *)operator column: (id)column2;
00211 - (void) groupByHaving: (id)column1 operator: (NSString *)operator column: (id)column2 connector: (NSString *)connector;
00220 - (void) groupByHaving: (id)column operator: (NSString *)operator value: (id)value; // wrap primitives with NSNumber
00230 - (void) groupByHaving: (id)column operator: (NSString *)operator value: (id)value connector: (NSString *)connector; // wrap primitives with NSNumber
00237 - (void) orderBy: (NSString *)column; // ORDER BY [COLUMN] ASC
00245 - (void) orderBy: (NSString *)column descending: (BOOL)descending; // ORDER BY [COLUMN] [ASC | DESC]
00256 - (void) orderBy: (NSString *)column nulls: (NSString *)weight; // ORDER BY [COLUMN] ASC [NULLS FIRST | NULLS LAST]
00268 - (void) orderBy: (NSString *)column descending: (BOOL)descending nulls: (NSString *)weight; // ORDER BY [COLUMN] [ASC | DESC] [NULLS FIRST | NULLS LAST]
00275 - (void) limit: (NSUInteger)limit;
00283 - (void) limit: (NSUInteger)limit offset: (NSUInteger)offset;
00290 - (void) offset: (NSUInteger)offset;
00297 - (NSArray *) query;
00298 
00299 @end
 All Classes Files Functions Variables Properties Defines