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

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


Информационный Канал Subscribe.Ru

Новости сайта "Упражнения по SQL (http://www.sql-ex.ru)" Выпуск 25 (5 марта 2005 г.)

http://www.sql-ex.ru

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

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

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

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


Прекрасную половину из читающих эту рассылку поздравляю c Днем 8 Марта!
Счастья, любви вам и успехов не только в SQL!

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

§ После оживленной дискуссии по поводу задачи 121 принята формулировка в редакции Fiolent. Теперь получить сертификат станет немного легче :-).

§ Выставлены 3 новых задачи - две по SELECT и одна по DML: 60-я - новое начало второго этапа, 137-я задача от Cirylus и 20 DML. Таким образом, на две задачи повышаются сертификационные требования. Удалены просроченные заказы сертификатов.

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

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

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

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

No Person Number of
Sel_ex
Last_Sel Number of
DML_ex
Scores Days Days_2 LastSolved LastVisit
1 >Шипунов И. (IAS) 77 136 20 201 265 82.049 05 Mar 2005 05 Mar 2005
2 Кувалкин К.С. (Cyrilus) 76 136 20 200 101 4.861 05 Mar 2005 05 Mar 2005
3 Зверев Д.Л. (dimzv) 76 136 19 198 450 2.291 27 Jan 2005 28 Jan 2005
4 Сныткин В.Л. (Ded I) 76 136 19 198 142 7.398 22 Jan 2005 05 Mar 2005
5 Валуев Д.И. (Fiolent) 76 136 19 198 503 19.337 19 Jan 2005 05 Mar 2005
6 Hakobyan H.H. (hamlet) 76 136 19 198 114 33.952 21 Jan 2005 05 Mar 2005
7 Галиаскаров Э.Г. (Galogen) 76 136 19 198 95 50.805 25 Feb 2005 04 Mar 2005
8 Мельникова И.А. (Iris_m) 76 136 19 198 254 66.765 21 Jan 2005 02 Mar 2005
9 Иткин И.Л. (joseph_itkin) 75 136 19 195 359 2.809 19 Feb 2005 22 Feb 2005
10 Spirin (spirin) 75 136 19 195 158 13.467 21 Jan 2005 24 Jan 2005
11 Леденев С.А. (Shurgenz) 73 136 19 193 146 8.298 11 Jan 2005 02 Mar 2005
12 Михайлов В.Г. (mslava) 73 136 17 189 498 9.731 26 Oct 2004 26 Oct 2004
13 Колосов А.С. (KAS) 65 125 19 178 15 2.804 01 Mar 2005 04 Mar 2005
14 Пятница О.А. (Robin) 65 128 17 174 606 70.821 22 Oct 2004 06 Feb 2005
15 Якутин Н.В. (ZrenBy) 73 136 6 169 511 3.991 14 Sep 2004 18 Jan 2005
16 Рассказов А. (ra) 61 121 19 168 70 29.764 28 Jan 2005 25 Feb 2005
17 Губарь Д.К. (DEathkNIghtS) 61 124 17 166 23 1.046 03 Nov 2004 03 Nov 2004
18 Смирнов А. (Leshich) 61 124 17 166 205 84.171 30 Sep 2004 19 Nov 2004
19 Gershovich (VIG) 58 121 19 163 710 6.899 19 Feb 2005 04 Mar 2005
20 Тортумашев Е.А. (Johnny) 58 118 19 160 142 7.896 03 Mar 2005 03 Mar 2005

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

No surname n_sel sel_all sel_scores dml_scores scores rating last_visit
1 Шишаев П.В. (pavel) 57 57 103 1 104 280 04 Mar 2005
2 Kiryushin A.V. (akir) 27 56 64 15 79 297 28 Feb 2005
3 >Чмель (dogma) 46 46 73 3 76 462 05 Mar 2005
4 Устюгов А.Н. (basic_system) 29 51 53 19 72 387 04 Mar 2005
5 >Koctochka K. (punchos) 39 46 63 0 63 481 05 Mar 2005
6 borachok Y.I. (yura) 38 38 60 0 60 588 04 Mar 2005
7 Family N.O. (Dantist1) 38 38 59 0 59 596 04 Mar 2005
8 >Тихомиров Д.В. (DiMenTor) 34 34 59 0 59 598 01 Mar 2005
9 Царицын С.С. (s) 30 63 55 0 55 164 04 Mar 2005
10 Tutisani T. (KiLLBoY) 29 29 52 0 52 667 04 Mar 2005
11 Осташинский Д.М. (dimma) 28 28 49 0 49 692 02 Mar 2005
12 >Кучнова Л.П. (OlgaKLP) 34 34 46 0 46 757 05 Mar 2005
13 Oleh M.A. (freeze) 26 26 44 0 44 781 28 Feb 2005
14 Иванов (massat) 22 39 34 9 43 639 27 Feb 2005
15 Кишкин А.Л. (walrus) 24 24 37 5 42 877 01 Mar 2005
16 Galimov (Gram) 10 52 23 17 40 360 05 Mar 2005
17 K A.A. (Alexander A. K.) 25 25 40 0 40 829 03 Mar 2005
18 Pichugin A.A. (APi) 24 24 38 0 38 863 02 Mar 2005
19 Самойлов А.В. (faerion) 15 57 37 0 37 288 27 Feb 2005
20 Путятин И.Н. (Putin) 14 36 33 1 34 538 02 Mar 2005
21 Литвинова Е.В. (Helena) 23 23 34 0 34 967 02 Mar 2005
22 Кулицкий Д.С. (StrayCat) 13 86 26 7 33 76 03 Mar 2005
23 Окунев Е.Е. (Yamaneko) 18 23 29 4 33 976 01 Mar 2005

Изучаем SQL

Функции работы со строками в SQL SERVER 2000 (продолжение, начало в вып.24)

Рассмотрим теперь задачу определения нахождения искомой подстроки в строковом выражении. Для этого могут использоваться две функции - CHARINDEX и PATINDEX. Обе они возвращают начальную позицию (позицию первого символа подстроки) подстроки в строке. Функция CHARINDEX имеет синтаксис:

CHARINDEX ( искомое_выражение , строковое_выражение [ , стартовая_позиция ] )

Здесь необязательный целочисленный параметр стартовая_позиция определяет позицию в строковом выражении, начиная с которой выполняется поиск. Если этот параметр опущен, поиск выполняется от начала строкового_выражения. Например, запрос

SELECT name FROM Ships WHERE CHARINDEX('sh', name) > 0

будет выводить те корабли, в которых имеется сочетание символов "sh". Здесь используется тот факт, что если искомая строка не будет обнаружена, то функция CHARINDEX возвращает 0. Результат выполнения запроса будет содержать следующие корабли:

name
Kirishima
Musashi
Washington

Следует отметить, что если искомая подстрока либо строковое выражение есть NULL, то результатом функции тоже будет NULL.

Следующий пример определяет позиции первого и второго вхождения символа "a" в имени корабля "California"

SELECT CHARINDEX('a',name) first_a,
   CHARINDEX('a', name, CHARINDEX('a', name)+1) second_a
FROM Ships WHERE name='California'

Обратите внимание, что при определении второго символа в функции используется стартовая позиция, которой является позиция следующего за первой буквой "a" символа - CHARINDEX('a', name)+1. Правильность результата - 2 и 10 - легко проверить :-).

Функция PATINDEX имеет синтаксис:

PATINDEX ( '%образец%' , строковое_выражение )

Главное отличие этой функции от CHARINDEX заключается в том, что поисковая строка может содержать подстановочные знаки - % и _. При этом концевые знаки "%" являются обязательными. Например, использование этой функции в первом примере будет иметь вид

SELECT name FROM Ships WHERE PATINDEX('%sh%', name) > 0

А вот, например, как можно найти имена кораблей, которые содержат последовательность из трех символов, первый и последний из которых есть "e":

SELECT name FROM Ships
WHERE PATINDEX('%e_e%', name) >0

Результат выполнения этого запроса выглядит следующим образом:

name
Revenge
Royal Sovereign

(Продолжение следует...)

§ Приведенные здесь примеры можно выполнить непосредственно на сайте, установив флажок "Без проверки" на странице с упражнениями на SELECT.

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

§ Временная недоступность сайта в первой половине дня 28.02.2005 была связана с проблемами сервера DNS. Поскольку фактически сайт работал, к нему можно было подключиться, привязав имя сайта к его ip-адресу на своем локальном компьютере.
Пользователи системы Windows могут это сделать, добавив в файл hosts:

Пуск --> Выполнить --> notepad %systemroot%\system32\drivers\etc\hosts

строку

213.248.60.205      www.sql-ex.ru

Контакты

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

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

http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.db.sqlex
Отписаться

В избранное