powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / SQL for Smarties
9 сообщений из 9, страница 1 из 1
SQL for Smarties
    #32981718
Фотография Sticker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кто нибудь знает где взять в электронном виде эту книжку.
Хвалят ее очень.

http://www.amazon.com/exec/obidos/ASIN/1558605762/104-7177753-6625534
...
Рейтинг: 0 / 0
SQL for Smarties
    #32982001
FishingIsGood
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Про книгу не знаю (у сумлеваюсь), а вот сам Джо Селко - дядька популярный и словоохотливый. У него есть много опубликованных статей и электронном виде, и некоторые весьма занимательные... Да и на форумах он подчас не гнушается изречь.
...
Рейтинг: 0 / 0
SQL for Smarties
    #32982174
Фотография Sticker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, многие на него и его книги ссылаются. Эта книга в pdf есть точно.
Я в видел в инете, но по глупости не скачал, а сейчас жалею и найти не могу.
...
Рейтинг: 0 / 0
SQL for Smarties
    #32985849
mir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FishingIsGoodДжо Селко - дядька популярный и словоохотливый.
Спору нет. Но к нему есть и претензии. Вот цитата с сайта Паскаля/Дейта :
http://www.dbdebunk.com/page/page/1490837.htm

(NOT) MORE ON CELKO, PLEASE!
with Fabian Pascal


From: JH
To: Editor
Date: 04 Oct 2004

Joe Celko has often hyped using nested sets to represent trees in a SQL DBMS. My introduction to Celko and nested sets was his post to a mailing list on this subject in 2001, and the idea intrigued me. There was just one problem. His examples did not work!

On the chance that I could have been using a worse-than-usual SQL implementation, I tried everything I could get my hands on, yet the results were the same. Celko goofed! Somebody that was an alleged expert had published something that was completely wrong. Not just a single post, but every single article on this subject for at least six years. Duplicated in everything from magazines to his book, SQL FOR SMARTIES.


I set out trying to understand how nested sets work. It took some time, but I eventually figured it out and sent him the message included below.

I've been playing around with the nested set model for a little while, thanks to your articles. However, I think I've found an error that has been duplicated in all instances of the article and the message(s) posted to the Postgres mailing list.

1. An employee and all their Supervisors, no matter how deep the tree.

Код: plaintext
1.
2.
3.
4.
SELECT P2.*
FROM Personnel AS P1, Personnel AS P2
WHERE P1.lft BETWEEN P2.lft AND P2.rgt
AND P1.emp = :myemployee;

2. The employee and all subordinates. There is a nice symmetry here.

Код: plaintext
1.
2.
3.
4.
SELECT P2.*
FROM Personnel AS P1, Personnel AS P2
WHERE P1.lft BETWEEN P2.lft AND P2.rgt
AND P2.emp = :myemployee;

I've tried this on Postgres, Oracle 9i, and mySQL, and get the same results for the second query:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
trees=# SELECT p2.* from personnel as p1, personnel as p2 where p1.lft
between p2.lft and p2.rgt and p2.emp = 'Albert';

    emp     | lft | rgt

------------+-----+-----

 Albert     |    1  |   12 

 Albert     |    1  |   12 

 Albert     |    1  |   12 

 Albert     |    1  |   12 

 Albert     |    1  |   12 

 Albert     |    1  |   12 

It should be a select from p1.* and not p2.*, which is also a bit more symmetrical. The results for selecting from p1 instead of p2:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
trees=# SELECT p1.* from personnel as p1, personnel as p2 where p1.lft
between p2.lft and p2.rgt and p2.emp = 'Albert';

    emp     | lft | rgt

------------+-----+-----

 Albert     |    1  |   12 

 Bert       |    2  |    3 

 Chuck      |    4  |   11 

 Donna      |    5  |    6 

 Eddie      |    7  |    8 

 Fred       |    9  |   10 

His response was brief. "Shit. You're right."


From: Fabian Pascal
To: JH


Too bad you did not check with me first. There is absolutely nothing that will persuade me to consider anything that has to do with Celko. 100% waste of time.
...
Рейтинг: 0 / 0
SQL for Smarties
    #32987577
FishingIsGood
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mirСпору нет. Но к нему есть и претензии.

А к кому претензий нет? Он довольно эксцентричный дядька, но за теорию nested sets ему земной поклон (есть уже, кстати, много вариаций на эту тему). А то что кто то ошибку в запросаx нашёл, то и фиг то с ним.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
SQL for Smarties
    #34083413
Templar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FishingIsGoodА к кому претензий нет? Он довольно эксцентричный дядька, но за теорию nested sets ему земной поклон (есть уже, кстати, много вариаций на эту тему). А то что кто то ошибку в запросаx нашёл, то и фиг то с ним.
Самое прикольное, что схема Селко не имеет никакого отношения к вложенным множествам, а является реализацией хранения маршрута обхода дерева в префиксном порядке
...
Рейтинг: 0 / 0
SQL for Smarties
    #34085819
Estets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TemplarСамое прикольное, что схема Селко не имеет никакого отношения к вложенным множествам, а является реализацией хранения маршрута обхода дерева в префиксном порядке
С таким же успехом можно обвинить Кодда с Дейтом что они не теорию реляционных БД развивали а описывали работу с таблицами ;)))) Это с какой стороны посмотреть...
...
Рейтинг: 0 / 0
SQL for Smarties
    #34089023
Templar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Estets
С таким же успехом можно обвинить Кодда с Дейтом что они не теорию реляционных БД развивали а описывали работу с таблицами ;))))
Тогда уж обвинять Кодда, что реляционной моделью занимался, а назвал ее сетевой :) что, согласитесь, беспочвенно.
Это с какой стороны посмотреть...
Да с какой не посмотри... Множества для деревьев по другому реализуются.
Шаблоны проектирования базы данных: иерархические структуры
...
Рейтинг: 0 / 0
SQL for Smarties
    #34091063
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FishingIsGoodОн довольно эксцентричный дядька, но за теорию nested sets ему земной поклон с другой стороны, я неоднократно встречал мнение о некотором неудобстве ее практического использования.
Вот например
Сам я nested sets никогда не использовал, т.к. альтернативные варианты вполне устаивают
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / SQL for Smarties
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]