что дает знание sql
Зачем аналитикам данных знать SQL
Авторизуйтесь
Зачем аналитикам данных знать SQL
Рассказывает Ирина Хомутова, эксперт и методолог курса SQL «Нетологии»
Что такое SQL?
Если коротко, это мощный инструмент для анализа и преобразования данных, который позволяет разработчикам обращаться к различным базам данных.
И если мы хотим анализировать данные — нам нужно их откуда-то получать, а получаем мы их, как правило, из баз данных. Не всегда это видно невооружённым взглядом, но читаем ли мы новости, переводим деньги со счёта на счёт, запрашиваем выписки по счёту, делаем покупки в интернет-магазине или просто знакомимся с ценами конкурентов — всё это мы делаем, обращаясь к различным базам данным.
Разные уровни и роли, работающие с SQL или результатами его применения
И вот перед тем, как мы получаем привычное «читабельное» представление нужной информации, данные извлекаются из хранилищ. И чаще всего это происходит именно с использованием SQL. В широком смысле SQL не является языком программирования, хотя и существует такое устоявшееся заблуждение. На самом деле он больше похож на самую обычную английскую речь.
Кто такие аналитики данных и с чем они работают?
Аналитики данных — своего рода экспериментаторы, которые владеют инструментарием для соединения потоков данных из различных источников, а также выдвигают гипотезы и проверяют их. Вот тут-то им и нужны базы данных и язык, позволяющий точно формулировать к ним запрос. Правильное получение исходных данных — это искусство, гарантирующее высокую вероятность того, что в поведении исследуемых объектов установятся причинно-следственные связи. Именно качество данных позволяет выбирать наиболее подходящие гипотезы.
Помимо SQL, аналитику данных необходимо знать инструменты статистического анализа данных: это и узкоспециализированные пакеты — SPSS, Statistika, и различные языки программирования — SAS, R, Python, обладающие функциональностью для анализа и визуализации данных, и совсем легковесные решения типа Gretl. А самый популярный набор инструментов у аналитиков, это, пожалуй, Python + SQL.
Инструменты и методы, с которыми сталкивается аналитик данных
Часто нужно представить данные наглядно и понятно для бизнеса, а иногда и самому оценить, какие факторы, влияющие на данные, являются значимыми, а какие нет, какие причины отклонений созависимы. Когда необходимо строить прогнозы, аналитики вместо того чтобы работать напрямую с базами, работают с датасетами (таблицами данных) с помощью различных пакетных решений.
При этом в каждой индустрии свои стандарты анализа, зависящие от чувствительности данных: для госструктуры набор инструментов будет одним (исходя из жёстких ограничений доступов), для НКО — другим, для диджитал-стартапа — третьим.
Откуда брать данные и что делать с SQL командами?
В организациях есть свои хранилища данных и при необходимости к ним можно получить доступ. Это происходит и при разграничении прав пользователей, и при работах по разработке баз данных. С помощью Python, зная адрес сервера и данные для подключения к нему, можно импортировать нужные библиотеки и писать запросы уже внутри используемой программы.
Примеры библиотек: для ODBC — pyodbc, PostgreSQL — psycopg2, MySQL — mysql.connector и т. д.
Ваша программа-«получатель данных», в свою очередь, может находиться внутри облачного решения на основе jupiter notebook. А к полученным данным вы примените дальнейшие выкладки и/или построите графики (как минимум, библиотеки: pandas, numpy, matplotlib и т.д.).
Аналитические функции
Считается, что в базах данных каждая строка запроса должна обрабатываться независимо от других. Практика диктует нам иные задачи, в которых часто необходимо группировать строки и вычислять для них общие показатели, используемые для оценки признаков строк внутри группы.
На помощь приходят аналитические функции SQL — мощный инструмент, который помогает разгрузить клиента от большого объёма процедурного кода, СУБД — от сложных и порой малоэффективных запросов, уменьшить время на разработку и получить при этом желаемый результат.
Функции для статистических расчётов включают в себя как стандартные агрегирующие функции (используются для получения обобщающих значений), так и расширения, характерные для конкретных СУБД.
Рассмотрим примеры, основанные на классическом тренировочном датасете Postgres.
Мы хотим обслуживать без очереди пассажиров, входящих в топ-5 по суммарному чеку за перелёт. Для этого вычисляем и выводим определённый список, чтобы спланировать дальнейшую работу:
На неделю получили примерно такой список:
book_ref | book_date | pcnt | top |
210222 | 2016-09-01 01:11:00+07 | 0.50550104073743681237 | 1 |
1EC77E | 2016-09-01 18:54:00+07 | 0.55010407374368123699 | 2 |
E6CFAC | 2016-09-01 02:23:00+07 | 0.59470710674992566161 | 3 |
9B5DE3 | 2016-09-01 13:19:00+07 | 0.59470710674992566161 | 4 |
85A140 | 2016-09-01 08:50:00+07 | 0.59470710674992566161 | 5 |
467FFA | 2016-09-02 11:11:00+07 | 0.28227480282274802823 | 1 |
F3DE41 | 2016-09-02 03:53:00+07 | 0.28227480282274802823 | 2 |
57FA09 | 2016-09-02 03:12:00+07 | 0.30718140307181403072 | 3 |
CA577F | 2016-09-02 06:27:00+07 | 0.30718140307181403072 | 4 |
B87401 | 2016-09-02 16:19:00+07 | 0.33208800332088003321 | 5 |
AD1930 | 2016-09-03 09:37:00+07 | 0.42542542542542542543 | 1 |
15C5CF | 2016-09-03 05:34:00+07 | 0.42542542542542542543 | 2 |
3BCE96 | 2016-09-03 07:05:00+07 | 0.46296296296296296296 | 3 |
4AE628 | 2016-09-03 01:40:00+07 | 0.46296296296296296296 | 4 |
3BE386 | 2016-09-03 22:50:00+07 | 0.46296296296296296296 | 5 |
7EBDF0 | 2016-09-04 03:46:00+07 | 0.46418266215029481872 | 1 |
6238CA | 2016-09-04 14:31:00+07 | 0.46418266215029481872 | 2 |
A1F776 | 2016-09-04 13:58:00+07 | 0.55200100363818843307 | 3 |
B7D95A | 2016-09-04 13:09:00+07 | 0.75272864132480240873 | 4 |
6E4FCC | 2016-09-04 08:19:00+07 | 0.75272864132480240873 | 5 |
8589BD | 2016-09-05 20:41:00+07 | 0.34500253678335870117 | 1 |
6EBFDF | 2016-09-05 05:00:00+07 | 0.34500253678335870117 | 2 |
0537C4 | 2016-09-05 17:00:00+07 | 0.37544393708777270421 | 3 |
3730000000 | 2016-09-05 22:39:00+07 | 0.40588533739218670726 | 4 |
B7CD13 | 2016-09-05 19:23:00+07 | 0.44647387113140537798 | 5 |
C1894E | 2016-09-06 01:43:00+07 | 0.44537594969871626932 | 1 |
D7B76D | 2016-09-06 23:35:00+07 | 0.44537594969871626932 | 2 |
D17BFD | 2016-09-06 19:48:00+07 | 0.44537594969871626932 | 3 |
A057E6 | 2016-09-06 10:00:00+07 | 0.44537594969871626932 | 4 |
FBCCF6 | 2016-09-06 06:01:00+07 | 0.44537594969871626932 | 5 |
D4B21A | 2016-09-07 05:26:00+07 | 0.43539505698552951722 | 1 |
3160000000 | 2016-09-07 10:36:00+07 | 0.51222947880650531438 | 2 |
D77412 | 2016-09-07 17:16:00+07 | 0.51222947880650531438 | 3 |
D31676 | 2016-09-07 01:05:00+07 | 0.51222947880650531438 | 4 |
794766 | 2016-09-07 22:47:00+07 | 0.76834421820975797157 | 5 |
Рассмотрим наш запрос внимательнее. Что тут есть:
Оконные функции общего назначения в большинстве СУБД позволяют узнать:
Для Postgres оконные функции:
Если же мы говорим об агрегатных функциях, то они работают как оконные тогда и только тогда, когда за их вызовом следует предложение over ; в противном случае они останутся обычными агрегатными.
Таким образом, на основе нескольких точных запросов аналитик может самостоятельно написать техническое задание на рекомендательную систему или сделать MVP для проверки продуктовых гипотез без привлечения специалистов по машинному обучению.
Кому нужен SQL? Оказывается, всем. А зачем?
Бизнесмены, госкорпорации, государственные органы, все стремятся использовать как можно больше высоких технологий для достижения поставленных целей. Ну буквально всё, что возможно, хочется автоматизировать: бухгалтерский и управленческий учет, финансы и логистику, транспорт и продажи. На высокооплачиваемые должности привлекают специалистов подкованных в современных технологиях.
Предпочтение отдается тем сотрудникам, которые за короткий срок могут обработать большой объем информации. Потому что своевременная и точная информация стоит дорого. Современные технологии убегают от вас далеко вперед? Но на самом деле ещё есть время наверстать упущенное и получить для себя отличные перспективы карьерного роста. Востребованными становятся новые специальности, даже освобождается время на то, о чем раньше вы задумывались только вскользь — переобучение.
Мы уже рассказывали о профессиях, в которых можно успешно развиваться на сегодняшний день. А сегодня мы попробуем доходчиво, простыми словами рассказать об SQL — инструменте, с которым можно сделать первый шаг в в сферу аналитики. Хотя его использование, конечно, этим не ограничивается.
SQL — следующая ступень эволюции после общеизвестных программ Excel и Access. Но это не программа, это язык запросов, которые понимают другие приложения и базы данных в целом.
На примере Excel можно объяснить работу SQL запросов
Информация о продажах, закупках, бухгалтерских проводках хранится в связанных между собой таблицах (например, таких как база 1С или база данных вашей товароучетной программы).
Данные имеют свои идентификаторы (id). Благодаря этому вся информация структурирована не в одной громоздкой таблице, а в множестве маленьких и «легких», связанных между собой особенными отношениями таблиц. Таким образом уменьшается объем файла с информацией. Он занимает меньше места на диске, время выполнения запросов сокращается, система работает быстрее.
На языке SQL пишутся специальные запросы (так называемые SQL инструкции) к базе данных с целью получения данных или для манипулирования ими.
Задав правильный запрос к базам, вы можете создавать таблицы, извлекать данные, удалять, фильтровать и т.п.
Плюсы SQL запросов:
Жизненная необходимость SQL инструментов
SQL активно используется при работе специалистами разных сфер. Например, маркетологами (чтобы реклама била точно в цель) или журналистами, стремящимися подкрепить свои статьи фактами.
Но он также нужен экономисту банка или торговой сети, который хочет стать ведущим аналитиком. Т.е. первая причина для освоения — карьерный рост.
В растущей компании объем данных увеличивается в геометрической прогрессии, чтобы информацию обработать и не потерять, да еще и проанализировать требуются финансовые аналитики, умеющие говорить на SQL.
В экселе можно долго и упорно настраивать фильтры, сортировать, но на специальном языке запросов компьютер вас поймет быстрее и точнее.
Простые ответы на сложные вопросы с помощью SQL
В огромной сети магазинов, типа Ашан, товаровед решает, сколько товаров нужно заказать у поставщиков для выполнения текущих заказов. Для решения потребуется выполнить множество расчетов: нужно посчитать остатки товара с учетом нормы запаса, посчитать дефицит товара, вывести название продукта и название поставщика. Такую многошаговую задачу решают SQL-запросы.
Для экономиста базы данных выведут список чеков за выбранный день дороже или дешевле нужной суммы и покажут, на каких кассах их пробили.
Финансовый аналитик с помощью SQL получает правильные исходные данные для построения дальнейших гипотез развития бизнеса. Он сможет верно определить причинно-следственных связи в поведении исследуемых реалий.
Можно долго перечислять возможности вашей базы данных после внедрения SQL-запросов, быстрее научиться и решать непосредственно свои задачи.
Как освоить SQL
Приятная новость в том, что в изучении SQL нет ничего сложного, это быстро, а синтаксис запросов прост и понятен.
Исторически SQL создавали, как инструмент для отбора и управления данными, которые закопаны в связанных таблицах. Перед создателями стояла цель — разработать эффективный и простой инструмент. Он должен быть понятен тем, кто не разбирается в языках программирования. Сегодня операторами SQL-запросов могут быть и экономисты, и бухгалтера, и финансисты, даже товароведы и другие специалисты.
Изучив новый язык запросов, вы никогда не останетесь без работы в современном технологичном мире. Наоборот получите шансы подняться вверх по карьерной лестнице или даже выйти на международный уровень.
Истории выпускников Нетологии
Арсений Сова, выпускник курсов по аналитике в Нетологии:
Например, исследование активности пользователей на проекте; исследования аудитории; получение данных для первичного анализа. Частая история, что менеджер продукта готовит отчетность, и соответственно, данные как-то собирать нужно. Даже проведение А/Б-тестирование — это все начинается с SQL.
Да и вообще, подводя итог, без SQL, на мой взгляд, никуда, уже скоро требование знаний по excel станет для всех — смех-смехом, все чаще вижу, что нужно знание sql, хотя бы на базовом уровне.
Я работаю в строительном секторе руководителем проектов. За последние 3 года мы реализовали три крупных проекта на территории Москвы в сфере гражданского строительства.
И я пошёл на курс SQL по нескольким причинам. Во-первых, данный инструмент является одним из самых важных в арсенале аналитика в современном мире. На мой взгляд, не зная SQL, невозможно в дальнейшем развиваться как аналитик.
Во-вторых, во многих современных компаниях, которые работают с большим объемом информации (большими данными) требуют знания SQL. Так как в дальнейшем я хочу развиваться в финансовой сфере или сфере ритейла, знание данного инструмента просто необходимо для меня.
Кому нужен SQL? Всем! Зачем — разбираемся в статье
Но зачем тому, кто хочет устроиться на работу в области данных, тратить время на изучение этого «древнего» языка в 2021 году?
Почему бы не потратить все свое время на освоение Python / R или не сосредоточиться на «более привлекательных» навыках работы с данными, таких как Deep Learning, Scala и Spark?
Хотя знание основ более универсального языка, такого как Python или R, имеет решающее значение, игнорирование SQL значительно усложнит работу с данными. Сейчас расскажем, почему.
Итак, что можно делать с помощью SQL?
• создавать таблицы данных;
• получать, изменять и хранить данные;
• изменять структуру данных;
• обеспечивать защиту данных.
Получается что, СУБД — это SQL плюс комплекс программного обеспечения. Очень часто базы данных путают с системой управления базой данных. Это нормально: понятия неразрывны, сама по себе БД без системы управления мало чем отличается от текстового файла со строчками. Важно не только хранить данные, но и управлять ими. СУБД применяются везде, где нужно структурировано хранить данные — от простого блога до проектов Data Science.
И речь не только о высокотехнологичных компаниях: и большие и маленькие компании используют SQL. Например, быстрый поиск работы в LinkedIn покажет вам, что больше компаний ищут навыки SQL, чем навыки Python или R. SQL может быть и старый, но он повсеместен.
«SQL настолько распространен, что пронизывает всё здесь. Это похоже на то, как синтаксис SQL сохраняется во времени и пространстве. Всё использует SQL или производные от SQL».
Знание SQL – один из важных навыков, который стоит освоить наравне с Python, php, javа и Power BI. Ведь практически любой сайт, от маленького блога до крупнейшего интернет-ресурса, используют базы данных. Чтение почты, перевод денег другу, покупки в интернет-магазинах или регистрация на сайте – всё это происходит через обращение к различным базам данным.
SQL — новая ступень эволюции после известных программ Excel и Access. Но это не программа, это язык запросов, которые понимают другие приложения и базы данных в целом.
При разработке веб-приложений практически всегда используются базы данных. Там хранится информация, необходимая для работы сайта – контент, логины/пароли, настройки и данные о посетителях и клиентах. С помощью SQL разработчик записывает и выводит данные из базы. Таким образом, SQL – связующее звено, которое обеспечивает взаимодействие приложения с базой данных и информацией, которая там хранится.
Если вы хотите получить работу в области анализа данных, ваше внимание должно быть сосредоточено на навыках, которые нужны работодателям.
Интересно, что доля вакансий, в которых перечисляется SQL, на самом деле, кажется, увеличивается!
Если вы ищете работу в области данных, окажется, что знание SQL еще более важно.
Для ролей аналитика данных SQL снова является наиболее востребованным навыком, занимающим 57,4% всех должностей аналитика данных. SQL появляется в 1,5 раза больше объявлениях о вакансиях «аналитик данных», чем Python, и почти в 2,5 раза чаще, чем в сообщениях R.
Нет сомнений в том, что если вы ищете роль аналитика данных, изучение SQL должно быть первым пунктом вашего списка.
Фактически, даже если вас интересуют более продвинутые роли, навыки SQL имеют решающее значение.
Анализ в объявлениях о вакансиях «Data Scientist» и «Data Engineer» показал похожую картину, хотя SQL не является основным навыком для любой из этих вакансий, по-прежнему фигурирует в 58,2% объявлений о вакансиях специалистов по данным и 56,4% данных в объявлениях о вакансиях инженера.
Мы предлагаем нашим студентам обучиться SQL с MVP от MICROSOFT, научиться писать запросы, работать с инструкциями, функциями и процедурами и так далее, а затем узнать о Power BI из курса Аналитик BI, его возможностях и важности для аналитиков.
Иными словами, Power BI автоматически создаёт краткий конспект всего, что содержится в SQL, но при этом конспект может обновляться и изменяться, как только захотите, и не теряет возможности детализации, если вдруг вам потребуется обратиться к полной информации.
Топ-65 вопросов по SQL с собеседований, к которым вы должны подготовиться в 2019 году. Часть I
Перевод статьи подготовлен для студентов курса «MS SQL Server разработчик»
Реляционные базы данных являются одними из наиболее часто используемых баз данных по сей день, и поэтому навыки работы с SQL для большинства должностей являются обязательными. В этой статье с вопросами по SQL с собеседований я познакомлю вас с наиболее часто задаваемыми вопросами по SQL (Structured Query Language — язык структурированных запросов). Эта статья является идеальным руководством для изучения всех концепций, связанных с SQL, Oracle, MS SQL Server и базой данных MySQL.
Наша статья с вопросами по SQL — универсальный ресурс, с помощью которого вы можете ускорить подготовку к собеседованию. Она состоит из набора из 65 самых распространенных вопросов, которые интервьюер может задать во время собеседования. Оно обычно начинается с базовых вопросов по SQL, а затем переходит к более сложным на основе обсуждения и ваших ответов. Эти вопросы по SQL с собеседований помогут вам извлечь максимальную выгоду на различных уровнях понимания.
Давайте начнем!
Вопросы по SQL с собеседований
Вопрос 1. В чем разница между операторами DELETE и TRUNCATE?
DELETE | TRUNCATE |
---|---|
Используется для удаления строки в таблице | Используется для удаления всех строк из таблицы |
Вы можете восстановить данные после удаления | Вы не можете восстановить данные (прим. перевод.: операции логируются по разному, но в SQL Server есть возможность сделать откат) транзакции) |
DML-команда | DDL-команда |
Медленнее, чем оператор TRUNCATE | Быстрее |
№ Вопрос 2. Из каких подмножеств состоит SQL?
Вопрос 3. Что подразумевается под СУБД? Какие существуют типы СУБД?
База данных — структурированная коллекция данных. Система управления базами данных (СУБД) — программное обеспечение, которое взаимодействует с пользователем, приложениями и самой базой данных для сбора и анализа данных. СУБД позволяет пользователю взаимодействовать с базой данных. Данные, хранящиеся в базе данных, могут быть изменены, извлечены и удалены. Они могут быть любых типов, таких как строки, числа, изображения и т. д.
Существует два типа СУБД:
Вопрос 4. Что подразумевается под таблицей и полем в SQL?
Таблица — организованный набор данных в виде строк и столбцов. Поле — это столбцы в таблице. Например:
Таблица: Student_Information
Поле: Stu_Id, Stu_Name, Stu_Marks
Вопрос 5. Что такое соединения в SQL?
Для соединения строк из двух или более таблиц на основе связанного между ними столбца используется оператор JOIN. Он используется для объединения двух таблиц или получения данных оттуда. В SQL есть 4 типа соединения, а именно:
Вопрос 6. В чем разница между типом данных CHAR и VARCHAR в SQL?
И Char, и Varchar служат символьными типами данных, но varchar используется для строк символов переменной длины, тогда как Char используется для строк фиксированной длины. Например, char(10) может хранить только 10 символов и не сможет хранить строку любой другой длины, тогда как varchar(10) может хранить строку любой длины до 10, т.е. например 6, 8 или 2.
Вопрос 7. Что такое первичный ключ (Primary key)?
_Пример: в таблице Student StuID является первичным ключом.
Вопрос 8. Что такое ограничения (Constraints)?
Ограничения (constraints) используются для указания ограничения на тип данных таблицы. Они могут быть указаны при создании или изменении таблицы. Пример ограничений:
Вопрос 9. В чем разница между SQL и MySQL?
SQL — стандартный язык структурированных запросов (Structured Query Language) на основе английского языка, тогда как MySQL — система управления базами данных. SQL — язык реляционной базы данных, который используется для доступа и управления данными, MySQL — реляционная СУБД (система управления базами данных), также как и SQL Server, Informix и т. д.
Вопрос 10. Что такое уникальный ключ (Unique key)?
Вопрос 11. Что такое внешний ключ (Foreign key)?
Вопрос 12. Что подразумевается под целостностью данных?
Целостность данных определяет точность, а также согласованность данных, хранящихся в базе данных. Она также определяет ограничения целостности для обеспечения соблюдения бизнес-правил для данных, когда они вводятся в приложение или базу данных.
Вопрос 13. В чем разница между кластеризованным и некластеризованным индексами в SQL?
Вопрос 14. Напишите SQL-запрос для отображения текущей даты.
В SQL есть встроенная функция GetDate (), которая помогает возвращать текущий timestamp/дату.
Вопрос 15. Перечислите типы соединений
Существуют различные типы соединений, которые используются для извлечения данных между таблицами. Принципиально они делятся на четыре типа, а именно:
Inner join (Внутреннее соединение): в MySQL является наиболее распространенным типом. Оно используется для возврата всех строк из нескольких таблиц, для которых выполняется условие соединения.
Left Join (Левое соединение): в MySQL используется для возврата всех строк из левой (первой) таблицы и только совпадающих строк из правой (второй) таблицы, для которых выполняется условие соединения.
Right Join (Правое соединение): в MySQL используется для возврата всех строк из правой (второй) таблицы и только совпадающих строк из левой (первой) таблицы, для которых выполняется условие соединения.
Full Join (Полное соединение): возвращает все записи, для которых есть совпадение в любой из таблиц. Следовательно, он возвращает все строки из левой таблицы и все строки из правой таблицы.
Вопрос 16. Что вы подразумеваете под денормализацией?
Денормализация — техника, которая используется для преобразования из высших к низшим нормальным формам. Она помогает разработчикам баз данных повысить производительность всей инфраструктуры, поскольку вносит избыточность в таблицу. Она добавляет избыточные данные в таблицу, учитывая частые запросы к базе данных, которые объединяют данные из разных таблиц в одну таблицу.
Вопрос 17. Что такое сущности и отношения?
Сущности: человек, место или объект в реальном мире, данные о которых могут храниться в базе данных. В таблицах хранятся данные, которые представляют один тип сущности. Например — база данных банка имеет таблицу клиентов для хранения информации о клиентах. Таблица клиентов хранит эту информацию в виде набора атрибутов (столбцы в таблице) для каждого клиента.
Отношения: отношения или связи между сущностями, которые имеют какое-то отношение друг к другу. Например — имя клиента связано с номером учетной записи клиента и контактной информацией, которая может быть в той же таблице. Также могут быть отношения между отдельными таблицами (например, клиент к счетам).
Вопрос 18. Что такое индекс?
Индексы относятся к методу настройки производительности, позволяющему быстрее извлекать записи из таблицы. Индекс создает отдельную структуру для индексируемого поля и, следовательно, позволяет быстрее получать данные.
Вопрос 19. Опишите различные типы индексов.
Есть три типа индексов, а именно:
Вопрос 20. Что такое нормализация и каковы ее преимущества?
Нормализация — процесс организации данных, цель которого избежать дублирования и избыточности. Некоторые из преимуществ:
Вопрос 21. В чем разница между командами DROP и TRUNCATE?
Команда DROP удаляет саму таблицу, и нельзя сделать Rollback команды, тогда как команда TRUNCATE удаляет все строки из таблицы (прим. перевод.: в SQL Server Rollback нормально отработает и откатит DROP).
Вопрос 22. Объясните различные типы нормализации.
Существует много последовательных уровней нормализации. Это так называемые нормальные формы. Каждая последующая нормальная форма включает предыдущую. Первых трех нормальных форм обычно достаточно.
Вопрос 23. Что такое свойство ACID в базе данных?
ACID означает атомарность (Atomicity), согласованность (Consistency), изолированность (Isolation), долговечность (Durability). Он используется для обеспечения надежной обработки транзакций данных в системе базы данных.
Атомарность. Гарантирует, что транзакция будет полностью выполнена или потерпит неудачу, где транзакция представляет одну логическую операцию данных. Это означает, что при сбое одной части любой транзакции происходит сбой всей транзакции и состояние базы данных остается неизменным.
Согласованность. Гарантирует, что данные должны соответствовать всем правилам валидации. Проще говоря, вы можете сказать, что ваша транзакция никогда не оставит вашу базу данных в недопустимом состоянии.
Изолированность. Основной целью изолированности является контроль механизма параллельного изменения данных.
Долговечность. Долговечность подразумевает, что если транзакция была подтверждена (COMMIT), произошедшие в рамках транзакции изменения сохранятся независимо от того, что может встать у них на пути (например, потеря питания, сбой или ошибки любого рода).
Вопрос 24. Что вы подразумеваете под «триггером» в SQL?
Триггер в SQL — особый тип хранимых процедур, которые предназначены для автоматического выполнения в момент или после изменения данных. Это позволяет вам выполнить пакет кода, когда вставка, обновление или любой другой запрос выполняется к определенной таблице.
Вопрос 25. Какие операторы доступны в SQL?
В SQL доступно три типа оператора, а именно:
Вопрос 26. Совпадают ли значения NULL со значениями нуля или пробела?
Значение NULL вовсе не равно нулю или пробелу. Значение NULL представляет значение, которое недоступно, неизвестно, присвоено или неприменимо, тогда как ноль — это число, а пробел — символ.
Вопрос 27. В чем разница между перекрестным (cross join) и естественным (natural join) соединением?
Перекрестное соединение создает перекрестное или декартово произведение двух таблиц, тогда как естественное соединение основано на всех столбцах, имеющих одинаковое имя и типы данных в обеих таблицах.
Вопрос 28. Что такое подзапрос в SQL?
Подзапрос — это запрос внутри другого запроса, в котором определен запрос для извлечения данных или информации из базы данных. В подзапросе внешний запрос называется основным запросом, тогда как внутренний запрос называется подзапросом. Подзапросы всегда выполняются первыми, а результат подзапроса передается в основной запрос. Он может быть вложен в SELECT, UPDATE или любой другой запрос. Подзапрос также может использовать любые операторы сравнения, такие как >, SELECT * FROM table1
SELECT COUNT(*) FROM table1
SELECT rows FROM sysindexes WHERE AND indid
Ещё 35 вопросов с ответами опубликуем в следующей части… Следите за новостями!