mirror of
https://github.com/chaisql/chai.git
synced 2025-11-02 11:44:02 +08:00
db: only strict schemas
This commit is contained in:
@@ -7,26 +7,26 @@ import (
|
||||
"github.com/chaisql/chai/internal/sql/scanner"
|
||||
)
|
||||
|
||||
func (p *Parser) parseOrderBy() (expr.Path, scanner.Token, error) {
|
||||
func (p *Parser) parseOrderBy() (expr.Column, scanner.Token, error) {
|
||||
// parse ORDER token
|
||||
ok, err := p.parseOptional(scanner.ORDER, scanner.BY)
|
||||
if err != nil || !ok {
|
||||
return nil, 0, err
|
||||
return "", 0, err
|
||||
}
|
||||
|
||||
// parse path
|
||||
path, err := p.parsePath()
|
||||
// parse col
|
||||
col, err := p.parseColumn()
|
||||
if err != nil {
|
||||
return nil, 0, err
|
||||
return "", 0, err
|
||||
}
|
||||
|
||||
// parse optional ASC or DESC
|
||||
if tok, _, _ := p.ScanIgnoreWhitespace(); tok == scanner.ASC || tok == scanner.DESC {
|
||||
return expr.Path(path), tok, nil
|
||||
return col, tok, nil
|
||||
}
|
||||
p.Unscan()
|
||||
|
||||
return expr.Path(path), 0, nil
|
||||
return col, 0, nil
|
||||
}
|
||||
|
||||
func (p *Parser) parseLimit() (expr.Expr, error) {
|
||||
|
||||
Reference in New Issue
Block a user