SQL Pro
5.07K subscribers
142 photos
2 videos
10 files
127 links
SQL Pro - всё об SQL
Реклама: @anothertechrock

Контент канала:
1. Разбор вопросов с собеседований
2. Трюки SQL
3. Видео
4. Тесты
5. Задачи на логику
6. Юмор
Download Telegram
#вопрос42

Учитывая данные из таблицы A:
 x
------
2
-2
4
-4
-3
0
2

Напишите один запрос для вычисления суммы всех положительных и отрицательных значений x.

Решение будет вечером.

#вопросы #собеседование
Ответ на #вопрос42

Запрос для вычисления суммы всех положительных и отрицательных значений x будет выглядеть так:
select sum(case when x>0 then x else 0 end)
sum_pos,sum(case when x<0 then x else 0 end)
sum_neg from a;

#вопросы #собеседование
👍2
С помощью какого запроса можно получить текущую структуру таблицы tbl?
Anonymous Quiz
21%
SELECT * FROM tbl
2%
DROP TABLE tbl
30%
SHOW TABLE STRUCTURE tbl
32%
DESCRIBE tbl
9%
Все варианты неверные
7%
Узнать ответ
👎8
Трюк дня. SQL - Вернуть другую строку, если не найдена первая

Как вернуть строку, если не найдена первая.

Например:
SELECT * FROM TEST WHERE ID = '1' ИНАЧЕ SELECT * FROM TEST WHERE ID = '2'.

Решение будет вечером.

#tips
Трюк дня. SQL - Вернуть другую строку, если не найдена первая

Выберите обе, и отсортируйте в правильном порядке, взяв только первую строку, подразумевая, что ID у вас не просто 1,2, т.к в этом случае можно просто order by id сделать:
SELECT * 
FROM test
WHERE id IN ('A','B')
ORDER BY CASE WHEN id = 'A' THEN 1 ELSE 2 END
LIMIT 1

#tips
👍4👎1💩1🤡1
Задача на мышление и логику.

Определите, какое число должно стоять на месте знака вопроса.

Решение будет вечером.

#логика
👍7🤔2
Решение сегодняшней задачи на логику и мышление.

Вместо знака вопроса должно стоять число 66. Если двигаться по часовой стрелке начиная с 4, каждое последующее число равно удвоенному предыдущему, из которого вычли двойку.

4 × 2 − 2 = 8 − 2 = 6.
6 × 2 − 2 = 12 − 2 = 10.
10 × 2 − 2 = 20 − 2 = 18.
18 × 2 − 2 = 36 − 2 = 34.
34 × 2 − 2 = 68 − 2 = 66.

#логика
Трюк дня. Как отфильтровать неправильные номера в таблице номеров

Есть таблица Postgresql где есть поле типа character varying[]. В этом поле сохраняется номера телефонов в таком виде [+012345678901","+123456789012","2347587E+11"]. Как найти в этой таблице "неправильные" номера телефонов такого вида - 2347587E+11 и удалить? И чтобы после удаления массив выглядел так:

Массив до удаления [+012345678901","+123456789012","2347587E+11"]
Массив после удаления [+012345678901","+123456789012"]

Решение будет вечером.

#tips
👍1
Трюк дня. Как отфильтровать неправильные номера в таблице номеров

insert into phones 
with t as (select
ph.id,
unnest(ph.phones) as phone
FROM
phones ph )
select
id,
array_agg(phone) as phones
from
t
where phone like '%2%' // << место с фильтрацией "неверных" номеров
group by
id
on conflict(id) do update set phones = excluded.phones

#tips
#вопрос43

Чем NULL отличается от 0

Решение будет вечером.

#вопросы #собеседование
👍5🤡2
Ответ на #вопрос43

0 - это число.

NULL - это не число, а также NULL не является значением пустой строки. NULL используется для указания того, что данные отсутствуют, неизвестны, неприменимы. NULL не равен ничему, даже другому NULL.

#вопросы #собеседование
🔥10👍4
Задача на мышление и логику.

Переложите только 2 спички так, чтобы получить такой же домик, но в зеркальном отражении:

Решение будет вечером.

#логика
💩19🤡12👍5👎2😁1🐳1
Решение сегодняшней задачи на логику и мышление.

#логика
💩9🔥6🌭5🤡3👎2😁2
Трюк дня. Как проверить существует ли уже база данных mysql?

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

Решение будет вечером.

#tips
👍3
Трюк дня. Как проверить существует ли уже база данных mysql?

Создавать базу данных только в случае если она еще не существует:

CREATE DATABASE IF NOT EXISTS DBName;

#tips
🤔10👍4🤡4👎2👌2👏1
#вопрос44

С помощью какого запроса можно удалить все записи из таблицы?

Решение будет вечером.

#вопросы #собеседование
😁2👍1
👍3
Задача на мышление и логику.

Каким образом нарисовать треугольник, чтобы все его углы были 90 градусов?

Решение будет вечером.

#логика
Решение сегодняшней задачи на логику и мышление.

На мяче или любом другом сферическом предмете. Называется такой прямоугольник - сферический.

#логика
💩6😁2🌚2🤡1🌭1