jet/mysql/select_table.go

25 lines
577 B
Go
Raw Permalink Normal View History

2019-08-11 12:13:59 +02:00
package mysql
import "source.gleipnir.technology/Gleipnir/jet/v2/internal/jet"
2019-08-11 12:13:59 +02:00
2019-08-17 10:43:16 +02:00
// SelectTable is interface for MySQL sub-queries
2019-08-11 12:13:59 +02:00
type SelectTable interface {
2019-08-17 18:32:01 +02:00
readableTable
2019-08-11 12:13:59 +02:00
jet.SelectTable
}
type selectTableImpl struct {
2019-08-17 18:32:01 +02:00
jet.SelectTable
2019-08-11 12:13:59 +02:00
readableTableInterfaceImpl
}
2024-10-17 14:12:21 +02:00
func newSelectTable(selectStmt jet.SerializerHasProjections, alias string, columnAliases []jet.ColumnExpression) SelectTable {
2019-08-11 12:13:59 +02:00
subQuery := &selectTableImpl{
2024-10-17 14:12:21 +02:00
SelectTable: jet.NewSelectTable(selectStmt, alias, columnAliases),
2019-08-11 12:13:59 +02:00
}
subQuery.readableTableInterfaceImpl.root = subQuery
2019-08-11 12:13:59 +02:00
return subQuery
}