AT extra 👨‍💻 devcode
4 subscribers
601 photos
145 videos
1 file
574 links
Главное не ставить деплой в пятницу 🤣

#трюкдня #мемдня

Мемы тут: @atextra_entertrends
Download Telegram
Forwarded from Data Science. SQL hub
🖥 Как правильно вводить дату в SQL

В SQL даты обычно вводятся в формате "ГГГГ-ММ-ДД", где "ГГГГ" - год, "ММ" - месяц (от 01 до 12) и "ДД" - день (от 01 до 31).

Например, чтобы вставить запись в таблицу "orders" с датой заказа 22 марта 2023 года, можно использовать следующий запрос:

INSERT INTO orders (order_date, customer_name)
VALUES ('2023-03-22', 'Иванов Иван');


Если же дата вводится с помощью функции, то можно использовать стандартную функцию преобразования даты, например, функцию TO_DATE() в Oracle:

INSERT INTO orders (order_date, customer_name)
VALUES (TO_DATE('22-03-2023', 'DD-MM-YYYY'), 'Иванов Иван');

В этом примере мы используем функцию TO_DATE() для преобразования строки "22-03-2023" в дату формата "ГГГГ-ММ-ДД". Второй аргумент функции ("DD-MM-YYYY") указывает формат входной строки.

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from ДЕВОПСИНА | DevOps | Linux
This media is not supported in your browser
VIEW IN TELEGRAM
Нашел как-то разработчик баг...

@devopsina
Forwarded from Хабр Новости
Canonical опубликовала релиз дистрибутива Ubuntu 23.04 Lunar Lobster. Операционная система перешла на обновлённое окружение рабочего стола, а ядро обновили до выпуска 6.2. Также Steam в виде snap-пакета вышел в стабильную ветку.

#ОС #разработка
Forwarded from loldev();
This media is not supported in your browser
VIEW IN TELEGRAM
Надо было сказать, что на компьютере
Forwarded from Data Science. SQL hub
🖥 Создание базы данных для маркетплейса с помощью SQL

В этой статье мы разработаем БД для практики. В этом проекте перед вами стоит задача создать реляционную базу данных для веб-сайта, предлагающего продажу подержанных автомобилей.

Общее описание этого проекта заключается в том, что любой желающий может предлагать свои товары (подержанные автомобили) в виде рекламы, а потенциальные покупатели могут осуществлять поиск по нескольким категориям.

▪ Читать дальше

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Droider
This media is not supported in your browser
VIEW IN TELEGRAM
🤖 Инженеры подружили ChatGPT и робота Spot от Boston Dynamics!

Умельцы интегрировали технологию “из текста в речь” от Google, чтобы пользователи могли задавать “пёсику” вопросы голосом, а Spot мог отвечать в режиме реального времени с помощью ChatGPT.

В ролике можно увидеть, как Spot отвечает на вопросы о своем уровне заряда батареи, деталях задания и многом другом. Также робопёс может давать ответы “да” или “нет”, кивая или качая головой. Или отойти от “хозяина”, если он попросит.

Очень логичное продолжение - соединить языковую модель и роботов. Комментарии про захват “кожаных мешков” через 3,2,1…

@droidergram
Forwarded from Senior SQL Developer
Сравнение результатов двух SQL запросов выборки: EXCEPT, INTERSECT и SELECT

Оператор EXCEPT используется для вычитания результатов одного запроса из другого запроса. Другими словами, он возвращает только те строки, которые присутствуют в первом запросе, но отсутствуют во втором запросе.

Оператор INTERSECT используется для получения только тех строк, которые присутствуют в обоих запросах.

Оператор SELECT используется для выборки данных из таблицы.

Оператор EXCEPT вычитает результаты одного запроса из другого, а оператор INTERSECT находит только те строки, что присутствуют в обоих запросах. SELECT используется для выборки данных из таблицы. При использовании SQLite для работы с базами данных важно учитывать особенности каждого из этих операторов.
​​⚙️ Сохраняем историю запросов psql в файл.

Такое может пригодиться для дальнейшего анализа запросов, расследования инцидентов, связанных с безопасностью базы данных, или просто чтобы разобраться кто накосячил и снёс пол базы 😅 А может у вас родился какой-то гениальный запрос, который вы не можете больше повторить, а тут он в файле сохранится 😉

Для установки файла для записи воспользуемся следующей командой psql:

\set HISTFILE ~/.psql_history- :DBNAME

HISTFILE - это переменная, которая определяет файл для истории запросов.

Если эта переменная не определена, то значение берется из переменной окружения PSQL_HISTORY. Если и эта переменная не определена, то значением по умолчанию будет ~/.psql_history - для Linux систем и APPDATA%\postgresql\psql_history - для Windows.

В нашем примере psql будет вести отдельный файл с историей команд для каждой базы данных в кластере. Мы можем вместо DBNAME указать конкретное имя базы, и тогда история будет вестись только для нее.

Также мы можем поместить данную команду в файл .psqlrc и тогда нам не придется прописывать эту команду каждый раз при запуске psql.

#psql
Forwarded from Senior SQL Developer
Создание поля, объединяющего имя и зарплату в выборке из таблицы пользователей

Для создания поля, которое будет включать в себя и имена, и зарплату, можно использовать функцию CONCAT(). Она объединяет две или более строковые величины в одну строку.

Пример SQL-запроса для создания поля new_field на фото.

В примере мы выбираем таблицу users и создаем новое поле с помощью функции CONCAT(). Внутри функции указываем два поля, которые хотим объединить - name и salary. Также задаем новое имя для созданного поля - new_field, используя AS.

Теперь в результате выполнения запроса в выборке будет присутствовать новое поле new_field, которое будет содержать имя пользователя и его зарплату.
Forwarded from loldev();
Проблемы своего времени
Forwarded from Senior SQL Developer
#вопросы_с_собеседований

Что такое нормализация и денормализация?

Нормализация отношений в SQL призвана организовать информацию в базе данных таким образом, чтобы она не занимала много места и с ней было удобно работать. Это удаление избыточных данных, устранение дублей, идентификация наборов связанных данных через PRIMARY KEY, etc.

Соответственно, денормализация является обратным процессом, который вносит в нормализованную таблицу избыточные данные.
​​👨🏻‍🎓 Управление параметрами транзакции в PostgreSQL.

Мы уже с вами знаем как открывать транзакцию, фиксировать ее и откатывать изменения, а также как ставить точки сохранения внутри транзакции.

Теперь давайте разберемся какими параметрами транзакции мы можем управлять. Одни из таких параметров - это READ WRITE и READ ONLY.

READ WRITE - это транзакция для записи и чтения данных.

READ ONLY - транзакция только для чтения.

Пример:

BEGIN READ ONLY; - открываем транзакцию только для чтения

CREATE TABLE test (id int); - пытаемся создать таблицу test

ERROR: cannot execute CREATE TABLE in a read-only transaction - получаем ошибку

#queries
Forwarded from Senior SQL Developer
🖥 Как в sql посчитать количество повторяющихся значений

Можно попробовать использовать функцию 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
set.update

Метод update() обновляет текущее множество, добавляя элементы из другого множества (или любого другого итерируемого). Если предмет присутствует в обоих множествах, в обновленном множестве будет присутствовать только один экземпляр этого предмета.

#практика
​​📟 Полезные функции PostgreSQL (функция AVG ()).

Продолжаем знакомиться с агрегатными функциями PostgreSQL. Сегодня у нас на очереди функция AVG().

Эта функция позволяет измерить среднюю температуру по больнице посчитать среднее значение параметров в колонке.

Возьмем для примера нашу таблицу с данными по зарплатам сотрудников people:

Id| name |age|address | zp
-+-----––+--–+---------+–––––
1| Maxim |32|California|20000
2| Nastia|25| Texas |15000
3| Ilya |23| Norway |20000
4| Dima |25| Rich-Mond|65000
5| 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.