Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.10.29;
Скачать: CL | DM;

Вниз

Всем привет   Найти похожие ветки 

 
cooc   (2006-10-16 13:53) [0]

Объясните мне пожалуйста, в одной проге (не моей) есть такой запрос:

SELECT o.*, dr."sign", dr."sign"||": "||dr."car" AS "calcdriver", o."street"||COALESCE(" "||o."house", " ")||COALESCE(", кв."|| CASE WHEN (o."apart"="") THEN NULL ELSE o."apart" END , "") AS "calcaddressfrom", COALESCE( CASE WHEN (o."addressto"="") THEN NULL ELSE o."addressto" END ||", ", "")|| COALESCE(o."streetto", "")||" "||COALESCE(o."houseto", "") AS "calcaddressto", CAST(o."dcard"||" / "||(cr."usecount"+1)AS CHAR(100)) AS "calccard" , dr."sign" AS "drvsign" , dr."car" AS "drvcar" , dr."fname" AS "drvname" , cl."fname" AS "clientname" , u1."fname" AS "calcoper" , u2."fname" AS "calcdisp" , wo."wvalue" AS "calcorderstate" , cc."classname" AS "calcprefcar" , CAST(CASE WHEN (o."drvbonus">0) THEN "Бонус" ELSE "" END AS CHAR(100)) AS "calcbonus" , CAST(CASE WHEN (o."msgid"=1) THEN "###" WHEN (o."msgid"=2) THEN "+" ELSE "" END AS CHAR(100)) AS "calcmsg" FROM "orders" o LEFT OUTER JOIN "refdrivers" dr ON (o."driver" = dr."num") LEFT OUTER JOIN "refclients" cl ON (o."client"=cl."num") LEFT OUTER JOIN "dcards" cr ON (o."dcard"=cr."num") LEFT OUTER JOIN "refusers" u1 ON (o."oper"=u1."num") LEFT OUTER JOIN "refusers" u2 ON (o."disp"=u2."num") LEFT OUTER JOIN "words" wo ON ((wo."idname"="orderstate") AND (o."orderstate" = wo."state")) LEFT OUTER JOIN "refcarclass" cc ON (o."prefcar"=cc."num") WHERE (o."preorder"=1) AND ((o."driver" IS NULL) OR (o."driver"=-1))  ORDER BY o."preorder", o."orderstate", o."pretime", o."ordertime"
-------------------
Этот запрос разом формирует таблицу для вывода на экран.
Я же обычно формировал табл для вывода на клиенте с помощью лукап и калк полей.

В связи с этим вопрос: какой из вариантов наиболее производительный.
БД Firebird.


 
Sergey13 ©   (2006-10-16 14:03) [1]

А с форматированием кода совсем не знаком? Зря. Здорово жизнь облегчает.


 
Sergey13 ©   (2006-10-16 14:04) [2]

> В связи с этим вопрос: какой из вариантов наиболее производительный.

И так и эдак можно сделать и нормально и криво.


 
!!!!!!!!!!!!!!!!!!!   (2006-10-16 14:08) [3]

> А с форматированием кода совсем не знаком? Зря. Здорово
> жизнь облегчает.

Я этот запрос вытащил не из базы, а с через SQLMonitor.
Вот в каком виде достал в таком и показал.  :-)
Извиняйте.


> И так и эдак можно сделать и нормально и криво.

А если данный запрос выполняется в среднем каждые 10-20 секунд (зависит от настроек программы) ?


 
Sergey13 ©   (2006-10-16 14:12) [4]

> [3] !!!!!!!!!!!!!!!!!!!   (16.10.06 14:08)

> Вот в каком виде достал в таком и показал.  :-)

Не все надо показывать, что откуда-то достал. 8-)

> А если данный запрос выполняется в среднем каждые 10-20
> секунд (зависит от настроек программы) ?
Ну что. А частота современных процессоров около 3 гигагерц. 8-)



Страницы: 1 вся ветка

Текущий архив: 2006.10.29;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.028 c
5-1141901266
mss
2006-03-09 13:47
2006.10.29
Как заменить


6-1147337285
MetalFan
2006-05-11 12:48
2006.10.29
залить файл на файлохост с помощью idHTTP


2-1160394334
NetRaven
2006-10-09 15:45
2006.10.29
StringGrid


2-1160945393
Incognito
2006-10-16 00:49
2006.10.29
Назначение версии для программы


2-1160571980
проходил мимо решил заглянуть
2006-10-11 17:06
2006.10.29
Как скопировать все файлы без подкаталогов