{"repo":"weinberg/SQLToy","free":true,"listed":false,"github":"https://github.com/weinberg/SQLToy","clone":"git clone https://github.com/weinberg/SQLToy.git","description":"Learn SQL by creating a SQL database in JavaScript","language":"JavaScript","stars":274,"topics":["sql","database","educational-project","javascript"],"license":"MIT","category":"databases-storage","readme_excerpt":"What is SQLToy? SQLToy is an in-memory SQL database written in Javascript. It is under 500 lines of code and has zero dependencies. It supports the following SQL operations: - SELECT - FROM - CROSS JOIN - INNER JOIN - LEFT JOIN - RIGHT JOIN - WHERE - GROUP BY - Aggregate functions: ARRAY AGG, MAX, MIN, COUNT - DISTINCT - ORDER BY - OFFSET - LIMIT - CREATE TABLE - INSERT INTO - UPDATE SQLToy is for learning SQL. Instead of doing this from the \"outside-in\" by learning the query language you do it \"inside-out\" by going through the implementation of the most common SQL operators. Instead of just learning what the operators do, you also learn how they do it which (hopefully!) gives you a much deeper level of understanding. A detailed Wiki walks through the code. Please take a look! To get the most out of this repository you should have familiarity with Javascript and some ES6 syntax. If you are proficient in another programming language like Python or Java you should still be able to figure things out. This is not a primer on how to write a production grade database. No attempts are made at performance optimization or compatibility with any standard. SQLToy does not support persistence, transactions or even parsing queries. There are many ways you can break it. See below for usage. Read the Wiki The heart of this repo is not the code itself but the walkthrough which describes what you need to understand it: This can be found here: SQLToy Wiki If you are a Javascript programmer I s","default_branch":null,"files":null,"tree":[],"storefront":"/r/weinberg","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/weinberg/SQLToy/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}