MCPcopy Create free account
hub / github.com/ajitpratap0/GoSQLX / Example_extractMetadata

Function Example_extractMetadata

pkg/gosqlx/example_test.go:568–585  ·  view source on GitHub ↗

Example_extractMetadata demonstrates extracting comprehensive metadata from a query.

()

Source from the content-addressed store, hash-verified

566
567// Example_extractMetadata demonstrates extracting comprehensive metadata from a query.
568func Example_extractMetadata() {
569 sql := `SELECT u.name, COUNT(o.id) as order_count
570 FROM users u
571 LEFT JOIN orders o ON u.id = o.user_id
572 WHERE u.active = true
573 GROUP BY u.name
574 HAVING COUNT(o.id) > 5`
575
576 ast, err := gosqlx.Parse(sql)
577 if err != nil {
578 log.Fatal(err)
579 }
580
581 metadata := gosqlx.ExtractMetadata(ast)
582 fmt.Printf("Tables: %d, Columns: %d, Functions: %d\n",
583 len(metadata.Tables), len(metadata.Columns), len(metadata.Functions))
584 // Output: Tables: 2, Columns: 4, Functions: 1
585}
586
587// Example_extractTablesQualified demonstrates extracting qualified table names.
588func Example_extractTablesQualified() {

Callers

nothing calls this directly

Calls 2

ParseFunction · 0.92
ExtractMetadataFunction · 0.92

Tested by

no test coverage detected