from() — drizzle-orm Function Reference
Architecture documentation for the from() function in select.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD 09b04db0_c31b_3e78_dcf3_775320dfd6e3["from()"] 4ecdcad3_1259_82f0_fe5f_1d977c59268e["SQLiteSelectBuilder"] 09b04db0_c31b_3e78_dcf3_775320dfd6e3 -->|defined in| 4ecdcad3_1259_82f0_fe5f_1d977c59268e style 09b04db0_c31b_3e78_dcf3_775320dfd6e3 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
drizzle-orm/src/sqlite-core/query-builders/select.ts lines 87–126
from<TFrom extends SQLiteTable | Subquery | SQLiteViewBase | SQL>(
source: TFrom,
): CreateSQLiteSelectFromBuilderMode<
TBuilderMode,
GetSelectTableName<TFrom>,
TResultType,
TRunResult,
TSelection extends undefined ? GetSelectTableSelection<TFrom> : TSelection,
TSelection extends undefined ? 'single' : 'partial'
> {
const isPartialSelect = !!this.fields;
let fields: SelectedFields;
if (this.fields) {
fields = this.fields;
} else if (is(source, Subquery)) {
// This is required to use the proxy handler to get the correct field values from the subquery
fields = Object.fromEntries(
Object.keys(source._.selectedFields).map((
key,
) => [key, source[key as unknown as keyof typeof source] as unknown as SelectedFields[string]]),
);
} else if (is(source, SQLiteViewBase)) {
fields = source[ViewBaseConfig].selectedFields as SelectedFields;
} else if (is(source, SQL)) {
fields = {};
} else {
fields = getTableColumns<SQLiteTable>(source);
}
return new SQLiteSelectBase({
table: source,
fields,
isPartialSelect,
session: this.session,
dialect: this.dialect,
withList: this.withList,
distinct: this.distinct,
}) as any;
}
Domain
Subdomains
Source
Frequently Asked Questions
What does from() do?
from() is a function in the drizzle-orm codebase, defined in drizzle-orm/src/sqlite-core/query-builders/select.ts.
Where is from() defined?
from() is defined in drizzle-orm/src/sqlite-core/query-builders/select.ts at line 87.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free