5 рекомендаций по оптимизации запросов SQL
Также как небольшие улучшения повышают качество запросов, так и мелкие некорректные навыки могут снизить качество и понятность кода в долгосрочной перспективе.
Следовательно, пора избавиться от непродуктивных навыков SQL, а взамен сформировать новые и эффективные. Этим мы сейчас и займемся.
Смотреть статью
Также как небольшие улучшения повышают качество запросов, так и мелкие некорректные навыки могут снизить качество и понятность кода в долгосрочной перспективе.
Следовательно, пора избавиться от непродуктивных навыков SQL, а взамен сформировать новые и эффективные. Этим мы сейчас и займемся.
Смотреть статью
👍3❤1
#Вопросы_с_собеседования
Почему важно использовать параметризованные запросы в SQL вместо конкатенации строк при создании динамических запросов?
Использование параметризованных запросов помогает предотвратить SQL-инъекции, которые могут произойти при прямой конкатенации строк для создания динамических запросов. Параметризация обеспечивает соответствующий эскейпинг и обработку входных данных, что делает запросы более безопасными.
Почему важно использовать параметризованные запросы в SQL вместо конкатенации строк при создании динамических запросов?
Использование параметризованных запросов помогает предотвратить SQL-инъекции, которые могут произойти при прямой конкатенации строк для создания динамических запросов. Параметризация обеспечивает соответствующий эскейпинг и обработку входных данных, что делает запросы более безопасными.
👍4
#Вопросы_с_собеседования
Как в SQL можно выполнить самосоединение таблицы без использования ключевого слова JOIN?
В SQL можно выполнить самосоединение таблицы, используя подзапросы в условии WHERE, вместо явного использования JOIN. Это позволяет сравнивать строки внутри одной и той же таблицы без использования синтаксиса JOIN. Вот пример с таблицей employees, где мы хотим найти пары сотрудников с одинаковыми должностями.
В этом запросе мы используем синтаксис таблицы "FROM employees a, employees b", который подразумевает декартово произведение, но фильтруем результаты с помощью условия WHERE, чтобы оставить только те строки, где должности совпадают, исключая при этом строки, где сравниваются сами с собой. Это необычный способ выполнения самосоединения, обычно предпочтительнее использовать JOIN для большей читаемости и эффективности.
Как в SQL можно выполнить самосоединение таблицы без использования ключевого слова JOIN?
В SQL можно выполнить самосоединение таблицы, используя подзапросы в условии WHERE, вместо явного использования JOIN. Это позволяет сравнивать строки внутри одной и той же таблицы без использования синтаксиса JOIN. Вот пример с таблицей employees, где мы хотим найти пары сотрудников с одинаковыми должностями.
В этом запросе мы используем синтаксис таблицы "FROM employees a, employees b", который подразумевает декартово произведение, но фильтруем результаты с помощью условия WHERE, чтобы оставить только те строки, где должности совпадают, исключая при этом строки, где сравниваются сами с собой. Это необычный способ выполнения самосоединения, обычно предпочтительнее использовать JOIN для большей читаемости и эффективности.
👍9🔥3
#Вопросы_с_собеседования
Как вы можете применить оконную функцию и одновременно фильтровать результаты с использованием этой функции без применения подзапроса?
Используйте ключевое слово QUALIFY (в некоторых СУБД, например, в Teradata), которое позволяет фильтровать результаты запроса на основе условий, связанных с оконными функциями.
Как вы можете применить оконную функцию и одновременно фильтровать результаты с использованием этой функции без применения подзапроса?
Используйте ключевое слово QUALIFY (в некоторых СУБД, например, в Teradata), которое позволяет фильтровать результаты запроса на основе условий, связанных с оконными функциями.
👍3😱1
SQL Комментарии
SQL Comments используются для объяснения разделов инструкций SQL или для предотвращения выполнения самих инструкций SQL.
Комментарии не поддерживаются в базе данных Microsoft Access.
Однострочный комментарий
Однострочные комментарии начинаются с --.
Любой текст между -- и концом строки будет игнорироваться (не выполняться).
Многострочные комментарии
Многострочные комментарии начинаются с /* и заканчиваются */.
Любой текст между /* и */ будет игнорироваться.
SQL Comments используются для объяснения разделов инструкций SQL или для предотвращения выполнения самих инструкций SQL.
Комментарии не поддерживаются в базе данных Microsoft Access.
Однострочный комментарий
Однострочные комментарии начинаются с --.
Любой текст между -- и концом строки будет игнорироваться (не выполняться).
Многострочные комментарии
Многострочные комментарии начинаются с /* и заканчиваются */.
Любой текст между /* и */ будет игнорироваться.
👍7
👍8
SQL_Pandas.pdf
515.4 KB
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
Сравнение JSONB с hstore
Оба типа данных поддерживают хранение пар "ключ-значение", но JSONB имеет более сложную структуру, позволяющую включать массивы и вложенные объекты.
Hstore хранит данные в виде одиночных пар, что может быть удобно для простых случаев, но менее мощно для сложных структур.
Оба типа данных поддерживают хранение пар "ключ-значение", но JSONB имеет более сложную структуру, позволяющую включать массивы и вложенные объекты.
Hstore хранит данные в виде одиночных пар, что может быть удобно для простых случаев, но менее мощно для сложных структур.
👍7❤1
This media is not supported in your browser
VIEW IN TELEGRAM
Выполнение побитовых операций над числами из Oracle Database 21c с помощью:
✔ Преобразование десятичных чисел в двоичные (5 = 101, 6 = 110 и т. д.).
✔ Сравнение значений в каждой битовой позиции
✔ Преобразование результатов обратно в десятичный вид
BIT_AND_AGG
BIT_XOR_AGG
BIT_OR_AGG ✔ Преобразование десятичных чисел в двоичные (5 = 101, 6 = 110 и т. д.).
✔ Сравнение значений в каждой битовой позиции
✔ Преобразование результатов обратно в десятичный вид
👍1
Думаю можно ответить так - оператор LIKE используется для сравнения значений в столбцах с шаблоном, который вы задаете. Он позволяет искать строки, которые содержат определенные символы или фразы.
Шаблон запроса:
SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern;
Пример:SELECT * FROM customers WHERE last_name LIKE 'Sm%';
Этот запрос вернет все строки из таблицы customers, в которых last_name начинается с букв "Sm".Оператор LIKE чувствителен к регистру символов, то есть "A" и "a" будут восприниматься как разные символы. Однако, для того чтобы выполнить поиск, игнорируя регистр символов, можно использовать функцию UPPER или LOWER, например:
SELECT * FROM employees WHERE UPPER(first_name) LIKE '%JOHN%';Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤1🔥1
MS Access: DateSerial
DateSerial - это функция, которая позволяет создавать даты в MS Access на основе года, месяца и дня.
DateSerial - создание даты
Функция DateSerial принимает три аргумента: год, месяц и день. Она возвращает дату в виде значения типа Date.
DateSerial - использование с другими функциями
DateSerial можно использовать с другими функциями MS Access для выполнения различных операций с датами.
DateSerial - это функция, которая позволяет создавать даты в MS Access на основе года, месяца и дня.
DateSerial - создание даты
Функция DateSerial принимает три аргумента: год, месяц и день. Она возвращает дату в виде значения типа Date.
DateSerial - использование с другими функциями
DateSerial можно использовать с другими функциями MS Access для выполнения различных операций с датами.
👍2