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

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


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

Выпуск 453 от 01 июня 2013 г.

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

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

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

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

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


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

§ Выполнил компенсацию времени, связанную с простоем 28 мая.

§ Дополнил подсказку к задаче 39 (SELECT, рейтинг) предложением от трисп.

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

Топик		Сообщений
135 (SELECT)	17
779		12
193 (SELECT)	10
143 (SELECT)	8
302 (SELECT)	7

 

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

Автор		Число сообщений
qwrqwr  		18
andreykl		13
Pegoopik  		12
Дмитрий Гринкевич  	11
anddros  		8

 

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

Задача	Дата		Автор
159	2012-07-25	anddros
170	2011-07-15	qwrqwr
182	2012-02-16	Baser
192	2012-03-03	Baser
259	2012-07-23	anddros

 

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

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

 

§ Изменения среди лидеров (решенные за неделю задачи третьего этапа):
8. _dimon_ (172)
18. Дмитрий Гринкевич (143, 193)
23. Pegoopik (143)
24. smog (178)

§ Продвинулись в рейтинге:
96. azkaban (144, 1170.858)

§ Продвижение ближайших претендентов на попадание в ТОР 100:
112. IrishkaS (132, 145.129)
131. LoGizMo (117, 10.260)
150. Tenyva (114, 1441.465)
164. ARF (103, 62.014)
172. MontaG (108, 27.011)
193. Aprilfire (103, 3.052)
196. demkse (100, 327.034)

§ На этой неделе сертифицированы:
СергейТ (A13138394) [BK] - г.Москва, Россия

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

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

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

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

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

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

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

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

No Person Number of
Sel_ex
Last_Sel Number of
DML_ex
Scores Days Days_2 Days_3 S_3 LastSolved LastVisit
1Курочкин П.А. (qwrqwr)1214196245151284218.557146.8721572013-05-172013-05-31
2Карасёва Н.В. (vlksm)1214196245152565212.470167.6081572013-05-222013-05-30
3Креславский О.М. (Arcan)12139245122284214.613160.3631542013-05-042013-05-31
4Сальников С.А. ($erges)121011324506186114.78011.9891512013-04-012013-05-31
5Бежаев А.Ю. (Baser)120712224501869150.818132.3091512012-09-172013-05-31
6Boiko D. (Angellore)62071932449321102889.6931427.7771352013-05-212013-05-31
7Яцук А.А. (Faust_zp)1200255244831985144.272108.8401352012-07-122012-07-30
8Филиппкин Д.В. (_dimon_)8204172244841588156.96093.1511262013-05-272013-05-31
9Кузнецов В.С. (herrRo)1185104234421170481.38873.3351222012-02-082013-02-22
10Дубинский А.В. (_yizraor)1185122244381088718.8041122.9071022012-11-052012-11-25
11Дроздков А.Н. (anddros)519113524448182712.14410.760992013-05-302013-05-31
12Шиндин А.В. (AlShin)116125223396928408.897777.457992011-05-052011-05-21
13Тарасов Д.Б. (Gavrila)917832234202428151.46299.710952012-04-232012-05-25
14Орлов М.В. (Eagleoff)9165-323396952138.545106.466922011-11-102013-05-30
15Зотов П.Г. (Ozzy)116313233891412213.968187.364812012-02-052013-05-25
16Держальцев В.А. (MadVet)3151100223682073143.64299.698812010-12-292011-09-26
17Агапов В. (KERBEROS)117525324409240935.65327.703692013-04-022013-04-05
18Гринкевич Д.Л. (Дмитрий Гринкевич)1817719324396596116.076247.980642013-05-292013-05-31
19Калинин К.А. (kalinin_k)161681692338639927.21536.659602012-06-302013-05-31
20Shaymardanov M.M. (xLiSPirit)1917115824387942217.044311.299572013-04-242013-05-15

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

No surname n_sel sel_all sel_scores dml_scores scores rating last_visit
1>Setrin S.A. (LuckyHawk)3433538215631 May 2013
2борисов А.Н. (borftn)3666313755130 May 2013
3Вориводина Н. (Nataly90)21933437148331 May 2013
4>Аюров А.О. (трисп)19553203293331 May 2013
5>Телюх В. (LoGizMo)111173103113131 May 2013
6Овсянников А.С. (lnl122)0403131230228 May 2013
7>Тараненко (baboon)933131730137031 May 2013
8>Хужин М. (epsilon512)17602902960231 May 2013
9>Solovyev M. (MaSolov)15372422694231 May 2013
10>Пинчук Н.Ю. (hobo)192224024286231 May 2013
11Смольникова М.А. (fora)2664141859729 May 2013
12Podshivadlov F. (Fyodor)0
01717375231 May 2013
13>Сюбаев (suba351)1111617375331 May 2013
14>Ернеев В. (novio1)112015015134431 May 2013
15Пшеничный В.С. (Витёк39)7881401430631 May 2013
16Исаева Е.С. (Elena_I)103013013111831 May 2013
17Bodaev M. (Nakeshi)0580121262131 May 2013
18>no_sense (no_sense)101012012421731 May 2013
19Ch D.E. (arvist)0
01111442231 May 2013
20>ifritov (ifrit_)73110010103831 May 2013

Изучаем SQL

Как вставить строки в таблицу с единственным автоинкрементируемым столбцом?

Моисеенко С.И.

Рассмотрим теперь таблицу с единственным автоинкрементируемым столбцом (SQL Server):

    CREATE TABLE test_Identity(
	id int IDENTITY(1,1) PRIMARY KEY
    );

Как вставить в нее строки? Попытка не указывать значение

    INSERT INTO test_Identity VALUES();

или использовать значение по умолчанию

    INSERT INTO test_Identity VALUES(DEFAULT);

к успеху не приводит - ошибка.

Понятно, что мы можем вставить конкретное значение, если отключим счетчик:

     SET IDENTITY_INSERT test_Identity ON;
     INSERT INTO test_Identity(id) VALUES(5);

но тогда в нем нет для нас никакого смысла.

Уточним вопрос: как вставить в таблицу именно последовательные значения счетчика? Оказывается, что ответ лежит на поверхности, а именно, в стандартном синтаксисе:

    SET IDENTITY_INSERT test_Identity OFF;
    INSERT INTO test_Identity DEFAULT VALUES;

Вряд ли вы будете использовать DEFAULT VALUES в других случаях, т.к. при наличии первичного ключа воспользоваться значениями по умолчанию для всех столбцов таблицы можно будет только один раз. Тут же мы можем повторить этот оператор столько раз, сколько последовательных значений счетчика нам потребуется добавить в таблицу.

Обратимся теперь к другим СУБД, которые имеют в своем арсенале автоинкрементируемые столбцы.

Читать далее...

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

§ В настоящее время для решения упражнений на сайте используются следующие СУБД: 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"

В избранное