Skip to content

Commit a7ebd3f

Browse files
author
James Cor
committed
hacky, but whatever
1 parent 8db0c9f commit a7ebd3f

File tree

3 files changed

+13
-1
lines changed

3 files changed

+13
-1
lines changed

sql/analyzer/replace_count_star.go

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,17 @@ func replaceCountStar(ctx *sql.Context, a *Analyzer, n sql.Node, _ *plan.Scope,
3535

3636
return transform.Node(n, func(n sql.Node) (sql.Node, transform.TreeIdentity, error) {
3737
if agg, ok := n.(*plan.GroupBy); ok {
38+
if !qFlags.JoinIsSet() {
39+
print()
40+
}
41+
if !qFlags.SubqueryIsSet() {
42+
print()
43+
}
44+
if !qFlags.IsSet(sql.QFlagAnyAgg) {
45+
print()
46+
}
3847

39-
if len(agg.GroupByExprs) == 0 && !qFlags.JoinIsSet() && !qFlags.SubqueryIsSet() && !qFlags.IsSet(sql.QFlagAnyAgg) {
48+
if len(agg.GroupByExprs) == 0 && !qFlags.JoinIsSet() && !qFlags.SubqueryIsSet() && !qFlags.IsSet(sql.QFlagAnyAgg) && !qFlags.IsSet(sql.QFlagAnalyzeProcedure) {
4049
// top-level aggregation with a single group and no "any_value" functions can only return one row
4150
qFlags.Set(sql.QFlagMax1Row)
4251
}

sql/analyzer/stored_procedures.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,9 @@ func applyProcedures(ctx *sql.Context, a *Analyzer, n sql.Node, scope *plan.Scop
181181
return nil, transform.SameTree, sql.ErrStoredProceduresNotSupported.New(call.Database().Name())
182182
}
183183

184+
qFlags.Set(sql.QFlagAnalyzeProcedure)
184185
analyzedNode, _, err := analyzeProcedureBodies(ctx, a, call.Procedure, false, scope, sel, qFlags)
186+
qFlags.Unset(sql.QFlagAnalyzeProcedure)
185187
if err != nil {
186188
return nil, transform.SameTree, err
187189
}

sql/query_flags.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ const (
5555
QFlagCreateEvent
5656
QFlagCreateTrigger
5757
QFlagCreateProcedure
58+
QFlagAnalyzeProcedure
5859
)
5960

6061
type QueryFlags struct {

0 commit comments

Comments
 (0)