Tips & Tricks. Что такое SQL-инъекция и как ее предотвратить
Разбираемся, каким образом SQL может быть использован для атаки на веб-сайты.
#sql
Читать статью
Разбираемся, каким образом SQL может быть использован для атаки на веб-сайты.
#sql
Читать статью
👍1
Всем привет! Некоторые наши активные подписчики упоминали о том, что в задачах хотелось бы точно знать, о какой СУБД идёт речь.
Мы это учли по мере возможности, но ещё хотим узнать, какие именно СУБД вас интересуют? По результатам опроса станет понятно, на чем нам фокусировать внимание при составлении задач и ответов на них.
Проголосуйте, пожалуйста, в опросе ниже.
Мы это учли по мере возможности, но ещё хотим узнать, какие именно СУБД вас интересуют? По результатам опроса станет понятно, на чем нам фокусировать внимание при составлении задач и ответов на них.
Проголосуйте, пожалуйста, в опросе ниже.
Какие СУБД вас интересуют?
Anonymous Poll
40%
MySQL
27%
Microsoft SQL Server
51%
PostgreSQL
21%
Oracle
7%
Другое
8%
Посмотреть ответы
Какой оператор используется в PostgreSQL для экспорта таблицы в .csv файл?
Anonymous Quiz
8%
COPY
22%
EXPORT
5%
CSV_BATCH
42%
CSV_EXPORT
3%
Ничего из перечисленного
19%
Посмотреть ответы
Трюк дня. Удаление лишних пробелов в строке с использованием REGEX.
Предположим, есть строка, содержащая такой текст:
Решение:
Используйте функцию REGEXP_REPLACE:
#tips
Предположим, есть строка, содержащая такой текст:
This is a test string
Требуется удалить из строки лишние пробелы. Решение:
Используйте функцию REGEXP_REPLACE:
SELECT
REGEXP_REPLACE('This is a test string','( ){2,}',' ');
Данная функция поддерживается в PostgreSQL и MySQL.#tips
Какое выражение корректно записано в формате JSON?
Anonymous Quiz
61%
{"id": 2, "info": {"name": "John", "surname": "Smith"}}
12%
"id": 2, "info": {"name": "John", "surname": "Smith"}
7%
{"id": 2, "info"- "name": "John", "surname": "Smith"}
6%
Ни одно из перечисленных
2%
Все перечисленные
12%
Посмотреть ответы
👍1
Ответ на #вопрос6
Представление - это виртуальная таблица, созданная на основе результата выполнения SQL-запроса.
Представление содержит строки и столбцы, как и реальная таблица.
Поля в представлении - это поля из одной или нескольких реальных таблиц в базе данных.
#вопросы #собеседование
Представление - это виртуальная таблица, созданная на основе результата выполнения SQL-запроса.
Представление содержит строки и столбцы, как и реальная таблица.
Поля в представлении - это поля из одной или нескольких реальных таблиц в базе данных.
#вопросы #собеседование
Tips & Tricks. Индексация: Базовые понятия
В этой статье на простом примере описано, что такое индексация, индекс, рассмотрены некоторые типы индексов и способы их создания.
#sql
Читать статью
В этой статье на простом примере описано, что такое индексация, индекс, рассмотрены некоторые типы индексов и способы их создания.
#sql
Читать статью
👍1
Трюк дня. Найти максимальное значение из двух колонок таблицы
Например, есть таблица:
customer value_1 value_2
Alex 5 18
Sam 1 19
Sam 3 2
В результате нужно получить следующее:
customer max
Alex 18
Sam 19
Sam 3
В PostgreSQL, MySQL и Oracle можно воспользоваться функцией
Например, есть таблица:
customer value_1 value_2
Alex 5 18
Sam 1 19
Sam 3 2
В результате нужно получить следующее:
customer max
Alex 18
Sam 19
Sam 3
В PostgreSQL, MySQL и Oracle можно воспользоваться функцией
GREATEST:SELECT customer, GREATEST (value_1, value_2) FROM table;В SQL Server подобной функции нет, поэтому можно решить эту задачу так:
SELECT customer, MAX (x.combined_val) AS greatest#tips
FROM table AS u
CROSS APPLY (SELECT u.value_1 UNION ALL SELECT u.value_2) AS x(combined_val)
GROUP BY customer;
Какой один и тот же результат возвращают данные функции:
LENGTH в MySQL, OCTET_LENGTH в PostgreSQL, DATALENGTH в MS SQL, LENGTHB в Oracle?
LENGTH в MySQL, OCTET_LENGTH в PostgreSQL, DATALENGTH в MS SQL, LENGTHB в Oracle?
Anonymous Quiz
43%
Количество символов в строке
4%
Количество слов в строке
38%
Длину строки в байтах
4%
Ничего из перечисленного
10%
Посмотреть ответы
Сколько записей возвратит следующий запрос:
SELECT 22 UNION SELECT 35 UNION SELECT 22;
SELECT 22 UNION SELECT 35 UNION SELECT 22;
Anonymous Quiz
8%
1
26%
2
24%
3
7%
NULL
15%
Ничего из перечисленного
20%
Посмотреть ответы
#вопрос7
Почему данный код выведет ошибку?
Почему данный код выведет ошибку?
SELECT id, name, CONCAT ('EU:', city) AS city_m
FROM customers
WHERE city_m = 'EU:Oslo';
#вопросы #собеседованиеОтвет на #вопрос7
Код выдаст ошибку, так как в данном случае alias нельзя использовать в операторе WHERE.
Порядок выполнения упомянутого SELECT запроса следующий:
1. FROM
2. WHERE
3. SELECT
Соответственно при выполнении команды WHERE, alias, задаваемый в SELECT еще неизвестен.
Для PostgreSQL или MySQL данную проблему можно решить, например, следующим образом:
#вопросы #собеседование
Код выдаст ошибку, так как в данном случае alias нельзя использовать в операторе WHERE.
Порядок выполнения упомянутого SELECT запроса следующий:
1. FROM
2. WHERE
3. SELECT
Соответственно при выполнении команды WHERE, alias, задаваемый в SELECT еще неизвестен.
Для PostgreSQL или MySQL данную проблему можно решить, например, следующим образом:
WITH ct AS (А какие еще варианты решения данной проблемы вы знаете?
SELECT id, name, CONCAT ('EU:', city) AS city_m
FROM customers
)
SELECT ct.*
FROM ct
WHERE ct.city_m = 'EU:Oslo';
#вопросы #собеседование
Tips & Tricks. SQL vs NoSQL в примерах
В этой статье мы рассмотрим примеры, демонстрирующие, как выполнять запросы к базам данных SQL и NoSQL.
#sql
Читать статью
В этой статье мы рассмотрим примеры, демонстрирующие, как выполнять запросы к базам данных SQL и NoSQL.
#sql
Читать статью