Skip to content
# Class: MultiQuerySplitter

Defined in: packages/core/src/utils/MultiQuerySplitter.ts:81

Splits SQL text containing multiple queries separated by semicolons

Provides sophisticated query boundary detection that properly handles:

  • String literals containing semicolons
  • Comments containing semicolons
  • Nested structures and complex SQL
  • Empty queries and whitespace handling

Example ​

typescript
const multiSQL = `
  -- First query
  SELECT 'hello;world' FROM users;
  
  // Second query with comment
  SELECT id FROM orders WHERE status = 'active';
  
  -- Empty query
  ;
`;

const queries = MultiQuerySplitter.split(multiSQL);
console.log(queries.queries.length); // 3 queries

// Find query at cursor position
const active = queries.getActive(150);
console.log(active?.sql); // Query containing position 150

Constructors ​

Constructor ​

new MultiQuerySplitter(): MultiQuerySplitter

Returns ​

MultiQuerySplitter

Methods ​

split() ​

static split(text): QueryCollection

Defined in: packages/core/src/utils/MultiQuerySplitter.ts:88

Split multi-query SQL text into individual queries

Parameters ​

text ​

string

SQL text that may contain multiple queries separated by semicolons

Returns ​

QueryCollection

Collection of individual queries with position information

Released under the MIT License.