1 /*
2  * Copyright 2015-2018 HuntLabs.cn.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 module hunt.sql.builder.SQLSelectBuilder;
17 
18 import hunt.sql.ast.statement.SQLSelectStatement;
19 import hunt.sql.builder.SQLBuilder;
20 
21 abstract class SQLSelectBuilder : SQLBuilder {
22 
23     SQLBuilder select(string[] column...) {
24         return this;
25     }
26 
27     SQLBuilder selectWithAlias(string column, string _alias) {
28         return this;
29     }
30 
31     SQLBuilder from(string table) {
32         return this;
33     }
34 
35     SQLBuilder from(string table, string _alias) {
36         return this;
37     }
38 
39     SQLBuilder orderBy(string[] columns...) {
40         return this;
41     }
42 
43     SQLBuilder groupBy(string expr) {
44         return this;
45     }
46 
47     SQLBuilder having(string expr) {
48         return this;
49     }
50 
51     SQLBuilder into(string expr) {
52         return this;
53     }
54 
55     SQLBuilder limit(int rowCount) {
56         return this;
57     }
58 
59     SQLBuilder offset(int offset) {
60         return this;
61     }
62 
63     SQLBuilder limit(int rowCount, int offset) {
64         return this;
65     }
66 
67     SQLBuilder where(string sql) {
68         return this;
69     }
70 
71     SQLBuilder whereAnd(string sql) {
72         return this;
73     }
74 
75     SQLBuilder whereOr(string sql) {
76         return this;
77     }
78 
79     SQLBuilder join(string table, string _alias = null, string cond = null) {
80         return this;
81     }
82 
83     SQLBuilder innerJoin(string table, string _alias = null, string cond = null) {
84         return this;
85     }
86 
87     SQLBuilder leftJoin(string table, string _alias = null, string cond = null) {
88         return this;
89     }
90 
91     SQLBuilder rightJoin(string table, string _alias = null, string cond = null) {
92         return this;
93     }
94 
95     override string toString() {
96         return "SQLSelectBuilder";
97     }
98 }