# LearnSQL ## Table of Content ### Basic Theory - [Data Types](./Notes/DataTypes.md) - [CRUD](./Notes/CRUD.md) - [Query](./Notes/Query.md) - [Filtering](./Notes/Filtering.md) - [Joins](./Notes/Joins.md) - [Sets](./Notes/Sets.md) - [Data Generation, Conversion](./Notes/DataGenerationConversion.md) - [Grouping and Aggregates](./Notes/GroupingAggregation.md) - [Subquery](./Notes/Subquery.md) - [Locking](./Notes/Locking.md) - [Storage Engine](./Notes/StorageEngine.md) - [Transactions](./Notes/Transactions.md) - [Indexes](Notes/Indexes.md) - [Constraints](./Notes/Constraints.md) - [Views](./Notes/Views.md) - [Metadata](./Notes/Metadata.md) ## Sample Code [Common Usage](./Notes/common-usage.md) [Working With Pandas](./Notes/pandas.ipynb) [Working With SQLAlchemy](./Notes/sqlalchemy.ipynb) ## SQLAlchemy (ORM) [SQLAlchemy](https://www.sqlalchemy.org/) > The SQLAlchemy Object Relational Mapper presents a method of associating user-defined Python classes with database tables, and instances of those classes (objects) with rows in their corresponding tables. > It includes a system that transparently synchronizes all changes in state between objects and their related rows, called a unit of work, as well as a system for expressing database queries in terms of the user defined classes and their defined relationships between each other. [-SQLAlchemy](https://docs.sqlalchemy.org/en/13/orm/tutorial.html) ## Reference - Learning SQL by Alan Beaulieu