Push 163 file(s) from Obsidian

This commit is contained in:
2026-09-24 13:22:58 +05:00
parent 4c6a45e2e8
commit 9777f9490f
163 changed files with 36730 additions and 0 deletions
@@ -0,0 +1,81 @@
#PostgreSQL #PostgreSQL #SQL
-- ***********************************
-- Редактирование таблиц, расширенные возможности SELECT, функции
-- ***********************************
-- Добавление поля в таблицу
```sql
ALTER TABLE table_name ADD COLUMN new_field
BOOLEAN NOT NULL DEFAULT TRUE;
```
-- добавление поля с автоинкрементом и primary key в таблицу
```sql
ALTER TABLE test1 ADD COLUMN id SERIAL PRIMARY KEY;
```
-- Удаление поля из таблицы
```sql
ALTER TABLE table_name DROP COLUMN new_field;
```
-- переименовать поле
```sql
ALTER TABLE table_name RENAME old_field TO new_field;
```
-- сменить тип данных
```sql
ALTER TABLE table_name ALTER COLUMN any_field SET
DATA TYPE VARCHAR(255);
```
-- изменить значение по умолчанию
```sql
ALTER TABLE table_name ALTER COLUMN any_field SET
DEFAULT 'new value';
```
-- добавить/удалить constraint NOT NULL
```sql
ALTER TABLE table_name ALTER COLUMN any_field
SET|DROP NOT NULL;
```
-- переименовать таблицу
```sql
ALTER TABLE table_name RENAME TO new_table_name;
```
-- Расширенные возможности SELECT
```sql
SELECT * FROM table WHERE field1 LIKE 'value'; -- field1 = 'value'
SELECT * FROM table WHERE field1 LIKE 'val%'; -- field1 начинается с 'val'
SELECT * FROM table WHERE field1 LIKE '%lue'; -- field1 заканчивается на 'lue'
SELECT * FROM table WHERE field1 LIKE '%e%'; -- field1 содержит 'e'
```
несколько условий
```sql
SELECT * FROM table WHERE field1 = 'value' AND field2 > 'value2';
SELECT * FROM table WHERE field1 = 'value' OR field2 > 'value2';
```
-- вывод уникальных записей
```sql
SELECT DISTINCT field1 FROM table;
```
-- группирование записей
```sql
SELECT field1, COUNT(field1) FROM table GROUP BY field1;
```
-- сгруппирует записи таблицы table по полю field и выведет уникальные значения field и количество повторений
```sql
```
SELECT field1, COUNT(field1) FROM table GROUP BY field1
HAVING COUNT(field) > 3;
-- сгруппирует записи таблицы table по полю field и выведет уникальные значения field и количество повторений, где количество повторений больше 3