Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Новости сайта "Упражнения по SQL" (http://www.sql-ex.ru) 639


Новости сайта "Упражнения по SQL (http://www.sql-ex.ru)"

Выпуск 639 от 31 декабря 2016 г.

Новым посетителям сайта

SQL Exercises

Сайт посвящен изучению языка, с помощью которого осуществляется взаимодействие с реляционными (и не только) СУБД. Суть обучения состоит в выполнении заданий на написание запросов к учебным базам данных; при этом система контролирует правильность выполнения заданий. В настоящее время реализованы все операторы подъязыка манипуляции данными (DML), которые включают в себя оператор извлечения данных SELECT, а также операторы модификации данных - INSERT, DELETE и UPDATE.

Мы надеемся, что справочного материала сайта окажется достаточно для самостоятельного обучения. Кроме того, свои решения вы можете обсудить на форуме сайта. Опытных же специалистов приглашаем проверить (продемонстрировать) свое мастерство и принять участие в соревновании, обеспечиваемом рейтинговой системой учета времени выполнения заданий. Фактически, рейтинг ведется на втором этапе тестирования, который начинается сейчас после решения 10 задач первого этапа. При подсчете рейтинга каждого участника отбрасывается один самый худший показатель среди всех решенных им упражнений.

Демонстрация плана выполнения запроса и сравнительная оценка эффективности решений поможет вам освоить принципы оптимизации запросов, которые пригодятся на третьем рейтинговом этапе, который начинается после 138 задачи.

Имеется возможность получить сертификат по SQL DML при выполнении определенного количества заданий.


С наступающим новым годом, друзья!
Здоровья и счастья в новом году и в последний день этого!

Новости сайта

§ Самые популярные темы недели на форуме

Топик		Сообщений
68 (SELECT)	13
218 (SELECT)	9
51 (SELECT)	8
70 (SELECT)	8
222 (SELECT)	7

 

§ Авторы недели на форуме

Автор		Сообщений
Tinar  		27
pegoopik  	26
Gosha		12
Kursist		6
selber  		6

 

§ Объявленные конкурсы по оптимизации запросов

Задача	Дата		Автор
147	2012-02-23	$erges
159	2012-07-25	anddros
170	2011-07-15	qwrqwr
182	2012-02-16	Baser
192	2012-03-03	Baser
197	2014-11-06	pegoopik
214	2015-06-24	pegoopik
259	2012-07-23	anddros

 

§ Дополнительные неоптимизационные конкурсы

Задача	Дата		Автор/Организатор конкурса
71	2010-12-26	anddros (завершен)
88	2012-07-12	crescent/Pegoopik  (завершен)
91	2012-05-31	smog/$erges
102	2016-07-04	GriGrim/pegoopik
121	2012-07-06	ZrenBy/anddros
153	2010-09-21	Ozzy

 

§ Изменения среди лидеров (решенные за неделю задачи третьего этапа):
1. Baser (222)
3. Angellore (218, 221)
10. Pegoopik (222)
74. mcrain (173)

§ Продвижение ближайших претендентов на попадание в ТОР 100 (число задач, время решения в днях):
127. Inderdikt (136,58.883)
141. IlyaB (131, 2391.207)
147. VadimI (126, 13.769)
257. Gosha (99, 249.238)

§ На этой неделе сертифицированы:
Tinar (A16348503) [BK] - Christchurch, New Zealand
Inderdikt (B16053197) [AR] - г. Балашиха, Россия

§ Число подписчиков - 3227

Число упражнений:
   на обучающем этапе - 134;
   на рейтинговых этапах - 223;
   DML - 29
   головоломки - 16 (отрицательные номера) + 10 (3 этап).

Число участников рейтинга - 12901

Число участников второго этапа - 2943

Число участников третьего этапа - 118

На обучающем этапе - 201117

Сертифицировано на сайте - 752

Лучшие результаты (ТОР 20)

No Person Number of
Sel_ex
Last_Sel Number of
DML_ex
Scores Days Days_2 Days_3 S_3 LastSolved LastVisit
1Бежаев А.Ю. (Baser)1254222296202430197.804175.1682222016-12-262016-12-30
2Креславский О.М. (Arcan)1253305296183607257.429200.9002202016-12-172016-12-30
3Boiko D. (Angellore)12512182961234284674.5263265.4442142016-12-292016-12-29
4Карасёва Н.В. (vlksm)1248219286053631274.404226.4842122016-04-222016-12-27
5Филиппкин Д.В. (_dimon_)1246115295992737194.624127.9092022016-07-202016-09-29
6Курочкин П.А. (qwrqwr)1245305295932594250.316159.3151952016-12-172016-12-30
7Movlyanov A.P. (Oct)72453052958912722353.7372448.8471932016-12-192016-12-30
8Дубинский А.В. (_velial)12412102958624922601.5323176.5401892016-09-092016-12-28
9Сальников С.А. (\$erges)122920625553253317.53314.4981812015-02-022016-08-11
10Красовский Е.А. (pegoopik)9238222295732360205.9029.8261752016-12-232016-12-29
11Костомаров А.В. (al29)92061902850817031680.2261266.4091602016-12-232016-12-30
12Яцук А.А. (Faust_zp)1188255244611984144.150108.8401372012-07-122012-07-30
13Кукушкин С.А. (smog)921345274911829950.7721059.9751242016-04-122016-12-19
14Кузнецов В.С. (herrRo)1173260234201167478.51173.3351222012-02-082013-06-18
15Гринкевич Д.Л. (Дмитрий Гринкевич)1320545274681652367.281932.3431092016-04-192016-12-30
16Дроздков А.Н. (anddros)51941624447224412.34111.0911082014-07-212015-01-29
17Шиндин А.В. (AlShin)114925223368928408.505777.457992011-05-052014-05-18
18Вязовецков А.С. (alex_v)15178187234073246123.34242.620972015-04-282015-06-05
19Тимофеева Е.В. (Umrikhina)120619529478301050.36747.237962016-07-212016-12-26
20Тарасов Д.Б. (Gavrila)916615233952427151.34399.710952012-04-232012-05-25

TOP 10 по оптимизации запросов


Лучшие результаты за неделю

No surname n_sel sel_all sel_scores dml_scores scores rating last_visit
1Selivanov E. (Tinar)25715005048430 Dec 2016
2Назаренко П.А. (xloki)173125025126527 Dec 2016
3>Гришунин М.Ф. (Гришунин М.Ф.)152722022139630 Dec 2016
4>Красавина О.В. (Chatte)11692002060930 Dec 2016
5I (VadimI)51261701714728 Dec 2016
6Tarasenko O.O. (Tarasenko_OO)103516016119230 Dec 2016
7Айвазян С.А. (sayvazyan_siblion)1212142842227029 Dec 2016
8Семенов Ю.В. (uratol)93312012216629 Dec 2016
9popov (popov.a)9911011496829 Dec 2016
10Чернов Д. (Kursist)5721001058930 Dec 2016
11Гусев С.Е. (Gusev_siblion)52492837153629 Dec 2016
12Лыков В.А. (lykov_siblion)71682836201929 Dec 2016
13country K. (countryKZ)7982331297730 Dec 2016
14Чуприков А.В. (Inderdikt)313680812729 Dec 2016
15>Matveyev A. (KsandrMatveyev)77808562630 Dec 2016
16Шкаредный (Gosha)39970725729 Dec 2016
17Boiko D. (Angellore)2251606329 Dec 2016
18Костомаров А.В. (al29)22066061130 Dec 2016
19Бикметов И.Р. (IlyaB)313160614130 Dec 2016
20Smolyaninov I. (Artis)35054984629 Dec 2016

Изучаем SQL

MySQL. Использование переменных в запросе

Красовский Е.А.

Довольно часто спрашивают, есть ли аналоги аналитических (оконных) функций в MySQL. Нет. Для их замены часто используют запросы с самосоединением, сложные подзапросы и прочее. Большинство таких решений оказываются неэффективными с точки зрения производительности.

Также в MySQL нет рекурсии. Однако с некоторой частью задач, которые обычно решаются аналитическими функциями или рекурсией, можно справиться и средствами MySQL.

Одним из этих средств является уникальный, нехарактерный для прочих СУБД механизм работы с переменными внутри запроса SQL. Мы можем объявить переменную внутри запроса, менять ей значение и подставлять в SELECT для вывода. Причем порядок обработки строк в запросе и, как следствие, порядок присвоения значений переменным можно задать в пользовательской сортировке!

Предупреждение. В статье подразумевается, что обработка выражений в предложении SELECT осуществляется слева направо, однако официального подтверждения такого порядка обработки в документации MySQL нет. Это необходимо иметь в виду при смене версии сервера. Для гарантии последовательности вычисления можно использовать фиктивный оператор CASE или IF.

Читать далее:
Аналог рекурсии
Аналоги аналитических функций
Производительность

Полезная информация

§ Вы можете купить футболку или кружку с логотипом сайта.

§ В настоящее время для решения упражнений на сайте используются следующие СУБД: SQL Server 2012 Express, Oracle 11g Express Edition, MySQL 5, PostgreSQL 9.

§ Группа SQL Exercises на LinkedIn.com. Присоединяйтесь!

§ Приглашаем вас посетить Интерактивный учебник по SQL.
   Ресурс позиционируется как "справочное обеспечение" для сайта SQL-EX.RU, но может использоваться и независимо от него.

§ Онлайновый выпуск рассылки можно почитать на сайте.

§ Книги и статьи по SQL.

§ Хотите поддержать проект? Вот инструкция по применению.

Контакты

По вопросам, связанным с функционированием сайта, обращайтесь к администратору сайта - Олегу В.Лысенко oleg17l[@]gmail.com.
C проблемами при решении упражнений, предложениями и идеями вы можете обращаться к Сергею И.Моисеенко msi77[@]yandex.ru. Вы также можете предложить свои задачи для публикации на сайте.

Подписка Subscribe.Ru
Новости сайта "Упражнения по SQL"

В избранное