Push 163 file(s) from Obsidian
This commit is contained in:
@@ -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
|
||||
Reference in New Issue
Block a user