Home / Function/ createSetOperator() — drizzle-orm Function Reference

createSetOperator() — drizzle-orm Function Reference

Architecture documentation for the createSetOperator() function in select.ts from the drizzle-orm codebase.

Entity Profile

Dependency Diagram

graph TD
  e8591949_8d5a_4e6e_d01f_b00e4f220e2b["createSetOperator()"]
  50a440a3_419f_74a4_a0ef_a8f58a685eb0["select.ts"]
  e8591949_8d5a_4e6e_d01f_b00e4f220e2b -->|defined in| 50a440a3_419f_74a4_a0ef_a8f58a685eb0
  style e8591949_8d5a_4e6e_d01f_b00e4f220e2b fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

drizzle-orm/src/pg-core/query-builders/select.ts lines 1127–1145

function createSetOperator(type: SetOperator, isAll: boolean): PgCreateSetOperatorFn {
	return (leftSelect, rightSelect, ...restSelects) => {
		const setOperators = [rightSelect, ...restSelects].map((select) => ({
			type,
			isAll,
			rightSelect: select as AnyPgSelect,
		}));

		for (const setOperator of setOperators) {
			if (!haveSameKeys((leftSelect as any).getSelectedFields(), setOperator.rightSelect.getSelectedFields())) {
				throw new Error(
					'Set operator error (union / intersect / except): selected fields are not the same or are in a different order',
				);
			}
		}

		return (leftSelect as AnyPgSelect).addSetOperators(setOperators) as any;
	};
}

Domain

Subdomains

Frequently Asked Questions

What does createSetOperator() do?
createSetOperator() is a function in the drizzle-orm codebase, defined in drizzle-orm/src/pg-core/query-builders/select.ts.
Where is createSetOperator() defined?
createSetOperator() is defined in drizzle-orm/src/pg-core/query-builders/select.ts at line 1127.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free