MCPcopy Create free account
hub / github.com/MaterializeInc/materialize / td_query

Function td_query

test/doc-examples/mzcompose.py:93–114  ·  view source on GitHub ↗
(
    sql: str, results: list[str] | str | None, replacements: dict[Any, Any]
)

Source from the content-addressed store, hash-verified

91
92
93def td_query(
94 sql: str, results: list[str] | str | None, replacements: dict[Any, Any]
95) -> list[str]:
96 result: list[str] = []
97
98 sql = re.sub(r"/\*.*?\*/", "", sql, flags=re.DOTALL)
99 sql = re.sub(r"--.*?$", "", sql, flags=re.MULTILINE)
100 for old, new in replacements.items():
101 sql = sql.replace(str(old), str(new))
102
103 for i, query in enumerate(sql.split(";")):
104 lines = query.strip().splitlines()
105 if not lines:
106 continue
107 result.append(f"> {lines[0]}\n" + "\n".join(f" {line}" for line in lines[1:]))
108 if isinstance(results, list):
109 result.append(td_result(results[i], replacements))
110
111 if isinstance(results, str):
112 result.append(td_result(results, replacements))
113
114 return result
115
116
117def td_result(raw: str, replacements: dict[Any, Any]) -> str:

Callers 1

td_snippetFunction · 0.85

Calls 7

td_resultFunction · 0.85
subMethod · 0.45
itemsMethod · 0.45
replaceMethod · 0.45
splitMethod · 0.45
appendMethod · 0.45
joinMethod · 0.45

Tested by

no test coverage detected