Re: Вопрос скорости

From
Vladimir Ilyashenko (2:5080/1003)
To
Pavel Korzan
Date
2006-02-24T23:01:32Z
Area
SU.DBMS.SQL
From: "Vladimir Ilyashenko" <fido7@front.ru>
Reply-To: "Vladimir Ilyashenko" <fido7@front.ru>

               Здравствуй, Pavel !

"_24_" _февраля_ 2006 г. Pavel написал в <fido7.su.dbms.sql>  на тему:
*"Вопрос скорости"*

PK> К А97 идет замечательный хелп на русском. В всяком сл. в ru.msaccess
PK> говорят что он куда лучше того, что в более новых версиях - очень
PK> рекомендую.

У меня ХР, но хорошо, что под рукой остался старый инст. диск с 97-м
офисом:)
вытащил весь хелп по акцессу, теперь буду пользовать.

[Пропущено]
PK> По поводу второго твоего счастья, если тебе повезет то в результате вот
PK> этого:

PK> SELECT tab1.a FROM tab1 LEFT JOIN tab2 ON tab1.a=tab2.y WHERE tab1.b='+'
PK> AND IsNull(tab2.y);

ПОВЕЗЛО!!!
Это и есть то, что мне надо было!

PK> будут выбраны записи удовлетворяющие указанным тобой условиям - b='+' и
PK> tab1.a нет в tab2.y (если в tab1 есть такие записи есс-но) - пользуйся
PK> на здоровье.

Спасибо!

[Пропущено]
PK> Пара вопросов-рекомендаций:
PK> 1. tab2.y может содержать только те значения которые УЖЕ есть в tab1.a?
PK> Если да - сделай внешний ключ (а может он уже есть? загляни в схему
PK> данных).

Ключа не было :( Просто не задумывался, что он ускорит процесс.

PK> 2. tab1.b обязательно быть символьными? Логический или целочисленный тип
PK> поля должны дать ускорение в выполнении подобных запросов и смотрятся
PK> красивше.

Логическое было - но в промежуточной таблице. Теперь просто добавлю его в
основную и допишу обработку.

[Пропущено]
PK> Будь здоров.

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

          Всего тебе наилучшего, Pavel!
_                                                        Владимир.         _
/VERBA VOLANT, SCRIPTA MANENT/ <слова улетают, написанное остается>


--- ifmail v.2.15dev5
 * Origin: Private (2:5080/1003@fidonet)
SEEN-BY: 46/50 50/12 278/169 450/1024 452/25 154 2432/260 4615/21 5000/5000
SEEN-BY: 5001/100 5010/2 53 5011/13 5012/30 46 5015/28 5019/31 5020/545 715
SEEN-BY: 5020/760 1641 2238 4441 5021/29 5025/3 5026/10 5027/12 5028/61
SEEN-BY: 5029/45 60 5030/115 5035/38 5041/4 5042/21 5045/7 5049/19 164 5053/16
SEEN-BY: 5054/1 8 9 28 35 37 45 50 63 67 5058/999 5059/9 5070/156 5071/22
SEEN-BY: 5077/70 5078/20 5080/68 147 239 1003 5085/13 87 5093/4 5095/20
SEEN-BY: 5097/31 64 6000/1 12 6028/1 6055/2 6083/12
PATH: 5080/1003 5020/545 5054/1 37