Forwarded from Senior SQL Developer
Создание поля, объединяющего имя и зарплату в выборке из таблицы пользователей
Для создания поля, которое будет включать в себя и имена, и зарплату, можно использовать функцию CONCAT(). Она объединяет две или более строковые величины в одну строку.
Пример SQL-запроса для создания поля new_field на фото.
В примере мы выбираем таблицу users и создаем новое поле с помощью функции CONCAT(). Внутри функции указываем два поля, которые хотим объединить - name и salary. Также задаем новое имя для созданного поля - new_field, используя AS.
Теперь в результате выполнения запроса в выборке будет присутствовать новое поле new_field, которое будет содержать имя пользователя и его зарплату.
Для создания поля, которое будет включать в себя и имена, и зарплату, можно использовать функцию CONCAT(). Она объединяет две или более строковые величины в одну строку.
Пример SQL-запроса для создания поля new_field на фото.
В примере мы выбираем таблицу users и создаем новое поле с помощью функции CONCAT(). Внутри функции указываем два поля, которые хотим объединить - name и salary. Также задаем новое имя для созданного поля - new_field, используя AS.
Теперь в результате выполнения запроса в выборке будет присутствовать новое поле new_field, которое будет содержать имя пользователя и его зарплату.
Forwarded from Senior SQL Developer
#вопросы_с_собеседований
Что такое нормализация и денормализация?
Нормализация отношений в SQL призвана организовать информацию в базе данных таким образом, чтобы она не занимала много места и с ней было удобно работать. Это удаление избыточных данных, устранение дублей, идентификация наборов связанных данных через PRIMARY KEY, etc.
Соответственно, денормализация является обратным процессом, который вносит в нормализованную таблицу избыточные данные.
Что такое нормализация и денормализация?
Нормализация отношений в SQL призвана организовать информацию в базе данных таким образом, чтобы она не занимала много места и с ней было удобно работать. Это удаление избыточных данных, устранение дублей, идентификация наборов связанных данных через PRIMARY KEY, etc.
Соответственно, денормализация является обратным процессом, который вносит в нормализованную таблицу избыточные данные.
Forwarded from Postgres Guru | Базы данных 💐
👨🏻🎓 Управление параметрами транзакции в PostgreSQL.
Мы уже с вами знаем как открывать транзакцию, фиксировать ее и откатывать изменения, а также как ставить точки сохранения внутри транзакции.
Теперь давайте разберемся какими параметрами транзакции мы можем управлять. Одни из таких параметров - это READ WRITE и READ ONLY.
READ WRITE - это транзакция для записи и чтения данных.
READ ONLY - транзакция только для чтения.
Пример:
#queries
Мы уже с вами знаем как открывать транзакцию, фиксировать ее и откатывать изменения, а также как ставить точки сохранения внутри транзакции.
Теперь давайте разберемся какими параметрами транзакции мы можем управлять. Одни из таких параметров - это READ WRITE и READ ONLY.
READ WRITE - это транзакция для записи и чтения данных.
READ ONLY - транзакция только для чтения.
Пример:
BEGIN READ ONLY; - открываем транзакцию только для чтенияCREATE TABLE test (id int); - пытаемся создать таблицу testERROR: cannot execute CREATE TABLE in a read-only transaction - получаем ошибку#queries
Forwarded from Senior SQL Developer
Можно попробовать использовать функцию COUNT() в сочетании с оператором GROUP BY.
Предположим, у нас есть таблица "orders" с колонками "customer_name" и "order_date", и мы хотим посчитать, сколько заказов было сделано каждым клиентом. Мы можем написать следующий SQL-запрос:
SELECT customer_name, COUNT(*) as order_count
FROM orders
GROUP BY customer_name
Этот запрос выберет все уникальные значения из колонки "customer_name" в таблице "orders" и подсчитает количество строк, связанных с каждым уникальным значением. Результатом запроса будет таблица со столбцами "customer_name" и "order_count", в которой каждая строка будет показывать клиента и количество его заказов.Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Простой Python | Программирование
set.update
Метод update() обновляет текущее множество, добавляя элементы из другого множества (или любого другого итерируемого). Если предмет присутствует в обоих множествах, в обновленном множестве будет присутствовать только один экземпляр этого предмета.
#практика
Метод update() обновляет текущее множество, добавляя элементы из другого множества (или любого другого итерируемого). Если предмет присутствует в обоих множествах, в обновленном множестве будет присутствовать только один экземпляр этого предмета.
#практика
Forwarded from Postgres Guru | Базы данных 💐
📟 Полезные функции PostgreSQL (функция AVG ()).
Продолжаем знакомиться с агрегатными функциями PostgreSQL. Сегодня у нас на очереди функция AVG().
Эта функция позволяетизмерить среднюю температуру по больнице посчитать среднее значение параметров в колонке.
Возьмем для примера нашу таблицу с данными по зарплатам сотрудников people:
Посчитаем среднюю зарплату всех сотрудников. Для этого используем следующий запрос:
Получим следующий результат:
В нашем случае у нас получилось ровное число. Но в других ситуациях у вас может получиться число с точкой и большим кол-вом знаков после нее. Чтобы привести число в более читаемый вид и сократить кол-во знаков после точки, можно использовать оператор numeric. Например так:
На выходе получим число с двумя знаками после точки.
#pgfunc
Продолжаем знакомиться с агрегатными функциями PostgreSQL. Сегодня у нас на очереди функция AVG().
Эта функция позволяет
Возьмем для примера нашу таблицу с данными по зарплатам сотрудников people:
Id| name |age|address | zp-+-----––+--–+---------+–––––1| Maxim |32|California|200002| Nastia|25| Texas |150003| Ilya |23| Norway |200004| Dima |25| Rich-Mond|650005| Sasha |27| Texas |85000Посчитаем среднюю зарплату всех сотрудников. Для этого используем следующий запрос:
SELECT AVG(zp) FROM people;Получим следующий результат:
avg-------------------- 41000(1 row)В нашем случае у нас получилось ровное число. Но в других ситуациях у вас может получиться число с точкой и большим кол-вом знаков после нее. Чтобы привести число в более читаемый вид и сократить кол-во знаков после точки, можно использовать оператор numeric. Например так:
SELECT AVG(zp)::numeric(10,2) FROM people;На выходе получим число с двумя знаками после точки.
#pgfunc
Forwarded from Senior SQL Developer
Различие команд UNION и UNION ALL
В SQL команда UNION и UNION ALL используются для объединения результатов двух или более запросов.
1. Команда UNION объединяет результаты двух запросов и возвращает уникальные записи. Если два запроса возвращают одинаковые записи, то в результате будет только одна.
2. Команда UNION ALL также объединяет результаты двух запросов, но в отличие от UNION, возвращает все записи, включая повторяющиеся.
Использование UNION и UNION ALL зависит от конкретной ситуации. Если необходимо получить только уникальные записи, то следует использовать UNION. Если необходимо получить все записи, включая повторяющиеся, то следует использовать UNION ALL.
В SQL команда UNION и UNION ALL используются для объединения результатов двух или более запросов.
1. Команда UNION объединяет результаты двух запросов и возвращает уникальные записи. Если два запроса возвращают одинаковые записи, то в результате будет только одна.
2. Команда UNION ALL также объединяет результаты двух запросов, но в отличие от UNION, возвращает все записи, включая повторяющиеся.
Использование UNION и UNION ALL зависит от конкретной ситуации. Если необходимо получить только уникальные записи, то следует использовать UNION. Если необходимо получить все записи, включая повторяющиеся, то следует использовать UNION ALL.
Forwarded from в IT и выйти
Студент пишет презентацию о рисках нейросетей при помощи ChatGPT.
Как говорится, работаем с первоисточниками.
@encryptedch
Как говорится, работаем с первоисточниками.
@encryptedch
Forwarded from Postgres Guru | Базы данных 💐
📟 Функции задержки выполнения в PostgreSQL.
В случае необходимости задержки выполнения процесса в PostgreSQL есть несколько функций.
Практической пользы от этих функций я не придумал 🤔 Но для целей тестирования кода, например, или эмуляции каких-то блокировок или зависших процессов они вполне могут сгодиться.
Одной из таких функций является pg_sleep (). В качестве параметра ей передается кол-во секунд, на которое нужна задержка. Значение может быть и дробным числом.
Пример выполнения:
или
Для удобства использования в PostgreSQL предусмотрены производные функции от pg_sleep(). Это pg_sleep_for() - принимает в качестве значения интервал, на который нужно "заснуть". Здесь уже можно указывать значения и в минутах, например так:
Еще есть функция pg_sleep_until(), которая позволяет задать определенное время выхода из сна, например вот так:
Время выхода из сна может быть и дольше, в зависимости от загрузки сервера СУБД.
⚠️ Баловаться с этими функциями на рабочем сервере СУБД нужно с осторожностью! Если вы например используете одну из этих функций в сеансе, который уже держит какие-то ресурсы блокировками, то рискуете подвесить и другие пользовательские сеансы, которым нужны теже самые ресурсы.
#pgfunc
В случае необходимости задержки выполнения процесса в PostgreSQL есть несколько функций.
Практической пользы от этих функций я не придумал 🤔 Но для целей тестирования кода, например, или эмуляции каких-то блокировок или зависших процессов они вполне могут сгодиться.
Одной из таких функций является pg_sleep (). В качестве параметра ей передается кол-во секунд, на которое нужна задержка. Значение может быть и дробным числом.
Пример выполнения:
SELECT pg_sleep(5);или
SELECT pg_sleep(1.2);Для удобства использования в PostgreSQL предусмотрены производные функции от pg_sleep(). Это pg_sleep_for() - принимает в качестве значения интервал, на который нужно "заснуть". Здесь уже можно указывать значения и в минутах, например так:
SELECT pg_sleep_for('3 minutes');Еще есть функция pg_sleep_until(), которая позволяет задать определенное время выхода из сна, например вот так:
SELECT pg_sleep_until('tomorrow 05:00');Время выхода из сна может быть и дольше, в зависимости от загрузки сервера СУБД.
⚠️ Баловаться с этими функциями на рабочем сервере СУБД нужно с осторожностью! Если вы например используете одну из этих функций в сеансе, который уже держит какие-то ресурсы блокировками, то рискуете подвесить и другие пользовательские сеансы, которым нужны теже самые ресурсы.
#pgfunc
Forwarded from Хабр
Mojo может стать крупнейшим достижением в области разработки языков программирования за последние десятилетия
Mojo — это новый язык программирования, основанный на Python, который устраняет имеющиеся у него проблемы производительности и развёртывания.
Mojo — это новый язык программирования, основанный на Python, который устраняет имеющиеся у него проблемы производительности и развёртывания.
Forwarded from Хабр Новости
Исследователь и реверс-инженер Николас Старке обнаружил в коде прошивки для контроллера твердотельного накопителя Kingston KC2000 (M.2 NVMe SSD) текст баллады The Scientist («Учёный») британской рок-группы Coldplay.
#разработка #НеожиданныйКроссовер
#разработка #НеожиданныйКроссовер
Forwarded from в IT и выйти
This media is not supported in your browser
VIEW IN TELEGRAM
Зацените: кодер создал мини-игру на базе Google карт. Добавьте оружие и выйдет полноценная GTA 6.
@encryptedch
@encryptedch
Forwarded from Senior SQL Developer
Функция CAST
Функция CAST() в MySQL преобразует значение в указанный тип данных. Это очень полезная функция, которая может помочь в решении различных задач. Например, она может быть использована для преобразования значения в DATE, DATETIME, DECIMAL, TIME, CHAR, NCHAR, SIGNED, UNSIGNED, BINARY.
Рассмотрим примеры использования функции CAST(). Предположим, у нас есть таблица с именем "products", которая содержит столбец "price". Если мы хотим преобразовать значения в столбце "price" в тип данных DECIMAL, мы можем воспользоваться функцией CAST() следующим образом:
SELECT CAST(price AS DECIMAL) FROM products;
Таким образом, мы получим значения в столбце "price", преобразованные в тип данных DECIMAL.
Функция CAST() в MySQL преобразует значение в указанный тип данных. Это очень полезная функция, которая может помочь в решении различных задач. Например, она может быть использована для преобразования значения в DATE, DATETIME, DECIMAL, TIME, CHAR, NCHAR, SIGNED, UNSIGNED, BINARY.
Рассмотрим примеры использования функции CAST(). Предположим, у нас есть таблица с именем "products", которая содержит столбец "price". Если мы хотим преобразовать значения в столбце "price" в тип данных DECIMAL, мы можем воспользоваться функцией CAST() следующим образом:
SELECT CAST(price AS DECIMAL) FROM products;
Таким образом, мы получим значения в столбце "price", преобразованные в тип данных DECIMAL.