
lost
26.05.2017
15:46:40
во втором подзапросе ты делаешь выборку по твоим датам и присваешь строкам склаляры
тоже самео делаешь в запросе с юнионами
на селект из каждой таблицы делаешь скаляр
ну и джойнишь 2 подзапроса между собой через скаляры

Google

lost
26.05.2017
16:03:04
А если даты в таблицах не пересекаются, то можно и без скаляров обойтись

Yuri
26.05.2017
16:10:07
У меня скорее не пересекаются, имеется в виду что на каждый месяц своя таблица с данными (структура таблиц одинаковая)

Alex
26.05.2017
16:10:32
и что мешает сделать UNION ?

Yuri
26.05.2017
16:10:37
Надо подумать
Мильон мильонов строк выходящих в итоге?

Alex
26.05.2017
16:12:19
эм зочем ?

Yuri
26.05.2017
16:13:51
Не знаю пока что мешает, я далеко от компа... Заранее спасибо))

Vladislav
26.05.2017
16:14:22
Юнион и делаете селекты по нужной дате
Главное не забыть сделать union all
А иначе и план будет диким и данные можете потерять

Al
26.05.2017
16:48:00

Vladislav
26.05.2017
16:48:51
Отличия union от union all как бы...
Очень часто это путают, хотя их работа "под капотом" очень сильно отличается

Google

lost
26.05.2017
17:27:05
естественно, это все равно что времянка будет с параметром distinct

aster
26.05.2017
17:31:43

Yuri
26.05.2017
17:32:19
А боюсь спросить, скалярки это что такое? Я вроде понял, но хочется узнать

Vladislav
26.05.2017
17:33:00

lost
26.05.2017
17:34:14

Yuri
26.05.2017
17:35:35
Константы что-то типа?
Не совсем понимаю просто

Vladislav
26.05.2017
17:36:07

lost
26.05.2017
17:36:33

Vladislav
26.05.2017
17:37:01

aster
26.05.2017
17:37:24

Yuri
26.05.2017
17:37:50
А, ты имеешь в виду объединить и проставить каждой таблице за какой она месяц?

lost
26.05.2017
17:38:22
типа того

Vladislav
26.05.2017
17:38:32
Конечно, в противном случае разделение таблиц бессмысленно

Yuri
26.05.2017
17:39:11
Чтобы потом селектить по этому полю и выбирать нужную "таблицу"

Vladislav
26.05.2017
17:39:36
Или несколько, в общем, раздолье

Yuri
26.05.2017
17:39:39
Ну да, я пока ехал домой, тоже о чем то похожем думал

lost
26.05.2017
17:40:49
юнион правда может быть толстый нахальный и противный, но щито поделать, если такая структура хранения

Yuri
26.05.2017
17:41:53
В принципе, это вроде как самый очевидный вариант

Google

Vladislav
26.05.2017
17:42:46

Yuri
26.05.2017
17:43:05
Хотя я и говорил что объединить не выйдет, на самом деле я думал, может чего-нить попутнее предложите ?

Vladislav
26.05.2017
17:43:24
Ну и вроде в 2012 или в 2014 версии что-то было на этот счет как раз, типа склеивания

lost
26.05.2017
17:44:13
а там mssql ? а то вроде как не указывали какая бд...

Vladislav
26.05.2017
17:44:43
А я запутался, у кого из них mssql ?

Yuri
26.05.2017
17:46:05
Mssql
Ssms
2012

Vladislav
26.05.2017
17:47:32
Тогда рекомендую посмотреть доку, вроде что-то там был для склейки таблиц

Ilya
26.05.2017
17:54:23
а в результате что надо получить? данные из всех таблиц? насколько данных будет меньше после джойна?

Vladislav
26.05.2017
17:57:40
Не совсем понимаю, как джойнить разные таблицы...

Yuri
26.05.2017
17:58:56

Vladislav
26.05.2017
17:59:22

Yuri
26.05.2017
18:00:46
По сути должно быть (в идеале) столько же сколько в левой таблице, задача сводится к простой проверке есть ли такая же запись в правой таблице
Не по всем полям одинаковая, а по некоторым

Ilya
26.05.2017
18:10:10
а чем тебе не нравится юнион, если в резулитате данные из всех таблицы всё равно окажутся в результатах запроса?

Yuri
26.05.2017
18:11:58
Мне нравится вариант предложенный lost soul; я не говорил, что юнион мне не нравится... Я даже о чём то что похожем думал

Al
26.05.2017
18:14:02
Че огороды то городить

Google

Ilya
26.05.2017
18:14:41
можно ещё сделать наоборот - сделать юнионы результатов

Yuri
26.05.2017
18:14:48
Сделаем, как комп освободят :))

Al
26.05.2017
18:14:50
Делаешь выборку поочереди. А потом результаты хоть крест на крест склеивай в приложентт

Ilya
26.05.2017
18:15:59
всё зависит от объема данных

Al
26.05.2017
18:16:35
От перемены мест слагаемых сумма не изменится

Alex
26.05.2017
18:17:21
Я бы еще спросил нахера такое делать с данными
Ну да ладно

Admin
ERROR: S client not available

Ilya
26.05.2017
18:17:47
кстати хороший вопрос)
нахрена их разбивать на таблицы?

Yuri
26.05.2017
18:18:43
Из базы данные за месяца выгружались
Поэтому
Это ещё до меня было, поэтому такое положение дел закрепилось

Ilya
26.05.2017
18:20:24

Yuri
26.05.2017
18:22:04
А задача с верху поступила, им захотелось к понедельнику, и не ебет, извиняюсь за выражение :D

Al
26.05.2017
18:22:27

Yuri
26.05.2017
18:23:44
Да хрен знает что они с ними делать будут. Главное же сделать в срок

Al
26.05.2017
18:24:03
Тогда вообще не понятно. Слей все в одну таблицу. Они ж одинаковые и отсортируй по времени и выбирай че хошь

Yuri
26.05.2017
18:24:07

Google

Yuri
26.05.2017
18:25:06

lost
26.05.2017
20:00:32
магнитная лента

Sega
26.05.2017
22:44:09
Здрасте
с sql помочь разобраться никто не может?

Yuri
26.05.2017
22:46:41

Sega
26.05.2017
22:47:19
нужно помочь описать сложный запрос
нужно сделать выборку из нескольких таблиц, по отдельности все получается на ура
но как все объеденить без понятия

Yuri
26.05.2017
22:48:37
внешние ключи, джойны, подзапросы?

Sega
26.05.2017
22:48:41
второй день бьюсь со всеми этими join и вложеными запросами

Yuri
26.05.2017
22:51:09
пример привести можете?

Sega
26.05.2017
22:52:11
Можно в личные скину?

Yuri
26.05.2017
22:52:24
давайте
Доброго всем времени суток, поднимаю вчерашнюю тему, только задача чуть иная: нужно сравнивать те же данные слева с одной и той же таблицей, но с разными её версиями (по времени имеется в виду) в разных базах
Есть вариант разбить таблицу слева для каждой соответствующей версии
Спрашиваю есть ли варианты не разбивая таблицу, т.к. в ней очень мало записей, в таблице справа точно под 2 мильона записей, а вот если разбивать, то будет максимум 5 записей на соответствующий месяц
Юнион по понятным причинам тут не попрет, тут даже union all нужен, потому что нельзя терять данные из таблиц, но нет

Al
27.05.2017
07:36:54
Я так и не понял почему нельзя обьединять таблицы
Видимо религия какая то. Свидетели месячных таблиц

Yuri
27.05.2017
07:41:18
Ну блин, считайте, 12 месяцев максимум, по 2 млн строк, 24 выйдет... Я, у меня нет опыта просто, я думаю что столько записей, это уже слишком много... Для обхода, для отсева нужных данных по общему полю