|
|
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
есть 2 таблицы с 3 одинаковыми полями column1,column2,column3, плюс доп поля в некоторых записях column3 может быть null нужно вывести все строки из таблицы2,плюс на каждую строку посчитать сумму строк из таблицы1,но с учетом что column3 в таблице2 может быть null пытался решить в лоб через join с условием по 3 полям +group by по этим полям,не получилось что и понятно изза поля с null ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2016, 18:41 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
Хрень какая-то... tadeyilodaв некоторых записях column3 может быть nullи к чему их, позволь узнать, нужно присовокупливать? Не получается объяснять словами - попробуй примером, что ли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2016, 18:57 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
согласен,получается запросом никак не получится? пока считаю сумму строк в программе, сперва делаю обычную выборку из таблицы2,затем для каждой записи из таблицы2 я проверяю column3=null и в зависимости считаю сумму по 3 полям или по двум вот решил попробовать сделать 1 запросом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2016, 19:05 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
tadeyilodaполучается запросом никак не получится? Парадоксальный вывод... Всё, что можно посчитать вручную, можно посчитать и в запросе. Но как было ни хрена не понять, так и до сих пор один туман... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2016, 19:15 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
а что именно не понятно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2016, 19:20 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
tadeyilodaа что именно не понятно? че те надо не понятно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2016, 08:05 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
tadeyiloda, на нулл вот так не проверяют - column3=null ну и нелогично схлапывать (group by) по Null полю может достаточно по column1,column2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2016, 08:55 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
полностью согласен,пример привел скорее для самоуспокоения тогда как сделать? 1 запросом не получится? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2016, 09:11 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
Не, он всё-таки какой-то альтернативно мыслящий... опять спрашивает "как", не рассказав "что"... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2016, 12:32 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
я спросил что рассказать? я уже привел пример который я хочу перенести в запрос авторпока считаю сумму строк в программе, сперва делаю обычную выборку из таблицы2,затем для каждой записи из таблицы2 я проверяю column3=null и в зависимости считаю сумму по 3 полям или по двум вот решил попробовать сделать 1 запросом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2016, 13:31 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
tadeyiloda, да приведите пример по 3 записи с таблиц и что надо получить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2016, 16:58 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
пример таблица 1 column1 column2 column3 1 1 12 2 null 1 1 12 2 null2 2 2 таблица 2 column1 column2 column3 цена 1 1 1 12 2 null 2 в итоге получаем column1 column2 column3 цена количество 1 1 1 1 22 2 null 2 3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2016, 19:57 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
Судя по приведённым данным, группировка выполняется по двум полям (column1,column2), а в поле "Количество" тупо кладётся SUM(). Интересно, что надо будет получить, если во вторую таблицу добавится запись (2,2,1,4)... Но самое главное - на данные явно накладывается дохрена ограничений, причём все они поддерживаются исключительно клиентом. Как итог, скорее всего, хрень в данных, которую учитывать, с одной стороны, затрахаешься, а с другой, "нинада, ведь такого в таблицах быть не должно". Бред, право слово... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2016, 20:41 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
да чтож такое неужели так плохо объясняю? таблица 1 column1 column2 column3 1 1 12 2 null 1 1 22 2 null2 2 2 таблица 2 column1 column2 column3 1 1 1 1 1 22 2 null в итоге получаем column1 column2 column3 количество 1 1 1 1 1 1 2 12 2 null 3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2016, 20:51 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
почему сразу бред? ид это номера стран,регионов,субрегионов у некоторых регионов нет подрегионов поэтому нулл ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2016, 20:54 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
таблица 1 column1 column2 column32 2 null2 2 1 таблица 2 column1 column2 column3 2 2 null 2 2 1 2 2 2 Результат? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2016, 21:11 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
column1 column2 column3 количество 2 2 null 2 2 2 1 1 2 2 20 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2016, 21:18 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
tadeyilodaпочему сразу бред? ид это номера стран,регионов,субрегионов у некоторых регионов нет подрегионов поэтому нуллчто за таблица1(что это? - приход товара, наличие-номенклатура?) что за таблица2 - цена? т.е. если нет цены то не считаем? в чем проблема то? Код: sql 1. 2. 3. 4. если да то прикручивайте СУМ или КАУНТ и все ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2016, 12:05 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
таблица 1 это товары по регионам таблица 2 цены на каждый регион запрос из примера не работает как надо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2016, 13:20 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
откуда указанная цифра? tadeyilodacolumn1 column2 column3 количество 2 2 null >>2<<< 2 2 1 1 2 2 20 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2016, 04:27 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
Alex_Ustinovtadeyilodaпочему сразу бред? ид это номера стран,регионов,субрегионов у некоторых регионов нет подрегионов поэтому нуллчто за таблица1(что это? - приход товара, наличие-номенклатура?) что за таблица2 - цена? т.е. если нет цены то не считаем? в чем проблема то? Код: sql 1. 2. 3. 4. если да то прикручивайте СУМ или КАУНТ и всену а если обойти нулл в лоб, что там дальше то? Код: sql 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2016, 04:54 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
Alex_Ustinov, group by забыл лень пробовать эту скумбрию.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2016, 05:11 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
Alex_Ustinovоткуда указанная цифра? tadeyilodacolumn1 column2 column3 количество 2 2 null >>2<<< 2 2 1 1 2 2 20 потому что 2 записи с полями column1=2, column2=2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2016, 13:35 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
ну так бы сразу и описали, вам надо итоговую по кол1,2 можно и одним запросом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2016, 07:47 |
|
||
|
join по полю с null
|
|||
|---|---|---|---|
|
#18+
вот что мне нужно если column3=null тогда count(*) from table1 where table1.column1=table2.column1 and table1.column2=table2.column2, если column3!=null тогда count(*) from table1 where table1.column1=table2.column1 and table1.column2=table2.column2 and table1.column3=table2.column3 нужно считать по трем или двум колонкам в зависимости от того column3 нул или не нул ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2016, 14:26 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39328942&tid=1831305]: |
0ms |
get settings: |
8ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
193ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
75ms |
get tp. blocked users: |
2ms |
| others: | 241ms |
| total: | 559ms |

| 0 / 0 |
