Files
obsidian-life/SQL.md
Aleksandr Ebaklakov 011626b8b7 Initial commit
2026-04-22 16:58:43 +03:00

37 lines
5.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## Подкатегории команд в SQL
- DDL (Data Definition Language) — `create`, `alert`, `drop`
- DML (Data Manipulation Language) — `select`, `insert`, `update`, `delete`
- TCL (Transaction Control Language) — `commit`, `rollback`, `savepoint`
- DCL (Data Control Language) — `grant`, `revoke`, `deny`
## Основные типы данных в SQL
| Название типа данных | Занимает байтов | Описание |
| ------------------------------------- | --------------- | ------------------------------------------------------------------------------------------------ |
| `smallint` | 2 | |
| `integer` | 4 | может записываться как `int`. |
| `bigint` | 8 | |
| `decimal`, `numeric` | variable | денежные расчёты обычно объявляются им. очень точен |
| `real`, `float4` | 4 | |
| `double precision`, `float8`, `float` | 8 | |
| `smallsireal` | 2 | |
| `sireal` | 4 | автоматически увеличивается на новой строке |
| `bigsireal` | 8 | |
| `char(n)` | variable | устанавливается точная длинна `n` при объявлении |
| `varchar(n)` | variable | в отличии от `char`, при добавлении строки меньшей длинны, чем `n`, строка не будет расширяться. |
| `text` | variable | поддерживает строки любой длинны |
| `Boolean`, `bool` | 1 | True или False |
| `date` | 4 | только дата |
| `time` | 8 | только время |
| `timestamp` | 8 | дата и время (вместе) |
| `interval` | 16 | разница между двумя `timestamp` |
| `timestamptz` | 8 | `timestamp` + часовой пояс |
| arrays | | |
| json | | |
| xml | | |
| геометрические и другие специальные | | |
| customтипы | | |
| `null` | | ничего |
Первичный ключ задается следующим образом:
```sql
*название_столбца* *типанных_столбца* GENERATED ALWAYS AS IDENTITY PRIMARY KEY
```