33 lines
598 B
Go
33 lines
598 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"query-inter/q"
|
|
// "github.com/DataDog/go-sqllexer"
|
|
)
|
|
|
|
func main() {
|
|
selectQuery := "SELECT id, name, createDate FROM users WHERE name=1;"
|
|
|
|
allStatements := q.ExtractSqlStatmentsFromString(selectQuery)
|
|
fmt.Println(allStatements)
|
|
|
|
//lexer := sqllexer.New(selectQuery)
|
|
//for {
|
|
// token := lexer.Scan()
|
|
// fmt.Println(token.Value, token.Type)
|
|
//
|
|
// if token.Type == sqllexer.EOF {
|
|
// break
|
|
// }
|
|
//}
|
|
|
|
for _, sql := range allStatements {
|
|
query := q.ParseSelectStatement(sql)
|
|
//fmt.Print(i)
|
|
//fmt.Println(query)
|
|
fmt.Println(query.GetFullSql())
|
|
}
|
|
|
|
}
|