Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.10.03;
Скачать: [xml.tar.bz2];

Вниз

Запрос 2 таблицам   Найти похожие ветки 

 
Алексей   (2004-09-01 11:27) [0]

Дано: 2 таблицы
create table tabl1(id_1 numeric(6,0),kolvo numeric(6,0))
create table tabl2(id_2 numeric(6,0),kolvo numeric(6,0))

Данные:

tabl1                tabl2
10   5               11     2
11   5               13     1
12   5
13   5

Пишу запрос:
select a.id_1,a.kolvo+b.kolvo from tabl1 a,tabl2 b where a.id_1=b.id_2

Расчитываю получить:
10   5
11   7
12   5
13   6

а получаю:

11   7
13   6

Как мне получить требуемое?


 
Роман Снегирев   (2004-09-01 11:34) [1]

хреново ты расчитываешь,where a.id_1=b.id_2 есть внутреннее объединение, почитай хелп по SQL


 
Алексе   (2004-09-01 11:42) [2]

join использовать?
А по другому никак?


 
sniknik ©   (2004-09-01 11:46) [3]

select a.id_1, a.kolvo+ iif(b.kolvo is Null, 0, b.kolvo) from tabl1 a left join tabl2 b on a.id_1=b.id_2
получиш то на что расчитываеш. (если то что используеш это позволяет ;о))


 
Алексе   (2004-09-01 11:58) [4]

После замены iff(b.kolvo is null,0,b.kolvo)
наiff(empty(b.kolvo),0,b.kolvo)
получил в результате
10    null
11    7
12    null
13    6


 
Роман Снегирев   (2004-09-01 12:03) [5]

coalesce тебя спасет


 
Алексе   (2004-09-01 12:07) [6]

А это что за зверь?????
Я про такое даже и не слышал :-)
Просвети, плиз....


 
sniknik ©   (2004-09-01 12:09) [7]

> После замены iff(b.kolvo is null,0,b.kolvo)
> наiff(empty(b.kolvo),0,b.kolvo)
у меня написано
iif(b.kolvo is Null, 0, b.kolvo)

а у тебя если потребовались замены не то что у меня. (?) намек понят? нет?
> (если то что используеш это позволяет ;о))


 
Роман Снегирев   (2004-09-01 12:11) [8]

А это что за зверь?????
Я про такое даже и не слышал :-)
Просвети, плиз....

это функция такая которая если грубо заменяет значения null на заданные тобой значения


 
sniknik ©   (2004-09-01 12:12) [9]

> coalesce тебя спасет

> А это что за зверь?????
> Я про такое даже и не слышал :-)
> Просвети, плиз....
а это то чего ни у тебя ни меня нет.

неужели неясно? проще тебе используемый движок назвать чем все варианты перебирать.


 
Алексе   (2004-09-01 12:14) [10]

Таблицы Fox`а, движок ADO....


 
Роман Снегирев   (2004-09-01 12:14) [11]

firebird 1.5 конечно


 
sniknik ©   (2004-09-01 12:16) [12]

> движок ADO....
ADO это не движок, надстройка, движок это то что он использует (к чему конект)


 
Роман Снегирев   (2004-09-01 12:23) [13]

ну тады (если это DBASE) надо использоывать BDE, правда тогда у тебя ничего не получиться


 
sniknik ©   (2004-09-01 12:23) [14]

ну ладно, в принципе ясно (раз фокс то скорее всего одбсишный драйвер его юзается)
небольшая замена, должно работать
select a.id_1, a.kolvo+ iif(isNull(b.kolvo), 0, b.kolvo) from tabl1 a left join tabl2 b on a.id_1=b.id_2


 
Алексе   (2004-09-01 12:34) [15]

УРА!
Заработало!!!
Ограмное спасибо.

P.S. Но пока не понял КАК работать :-)



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

Форум: "Базы";
Текущий архив: 2004.10.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.045 c
4-1092979626
RagE
2004-08-20 09:27
2004.10.03
Оконная процедура и класс


14-1095368393
jack128
2004-09-17 00:59
2004.10.03
Порядок вычисления аргументов в функции


6-1090889335
RaPToR_1
2004-07-27 04:48
2004.10.03
скачать twebbrowserom


14-1095230405
Igorek
2004-09-15 10:40
2004.10.03
Ой, верните назад


8-1089272832
Ale}{(is)
2004-07-08 11:47
2004.10.03
256-цветное изображение





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский