
Александр
21.11.2016
23:52:18
s и cp ты показала какие таблицы
Вопрос, какие null тебя не интересуют?!
но adv_campaign_id != s.campaign_id то выводить, а если равен то не выводить. (с)
опять сравнение cp и s

Google

Cate
21.11.2016
23:53:30
SELECT c.* FROM adv_campaigns c
LEFT JOIN statistics s
ON c.id=s.campaign_id
AND s.type_id=3
AND s.uid='5'
AND s.platform_id=4
WHERE s.id IS NULL
AND c.status=3
Вот у нас две таблицы.

Artur
21.11.2016
23:53:36
я смот рю у вас тут жаришка :)

Александр
21.11.2016
23:54:24

Cate
21.11.2016
23:54:27
s.campaign_id - не бывает нулем и точно есть в бд. потому что я туда занесла запись перед этим, запись с хэшем.

Александр
21.11.2016
23:54:39
Ок
Ты вывела все значения из базы с id is null и статусом 3
дальше чего хочешь? :D

Cate
21.11.2016
23:55:46
s.id - это другая история.

Artur
21.11.2016
23:55:49
только зачем-то перемножила и продублировала

Cate
21.11.2016
23:56:08
Да это вообще не мой запрос.
Ебанитесь)))

Google

Александр
21.11.2016
23:56:21
Ты разбираешь, значит твой

Cate
21.11.2016
23:56:21
не я его генерировала)))

Александр
21.11.2016
23:56:23
и нам спать не даёшь
:D

Alexander
21.11.2016
23:56:29
робкий совет со стороны: сделай простыми запросами, без джоинов, все промежуточные операции сделай на руби или на чём-то там

Александр
21.11.2016
23:56:30
Значит точно твой

Alexander
21.11.2016
23:56:35
всё равно у тебя нагрузки нет

Cate
21.11.2016
23:56:48
Это или демилиоратор, наклепал или стас ершов
два блин гения. щас по камитам вычислю)))

Александр
21.11.2016
23:57:04
Ух, криворукие обезьяны
:D
Насмехайтесь над ними
:D

Alexander
21.11.2016
23:58:15
не стоит пытаться сразу делать хорошо) сделай сначала как быстрее, но лишь бы работало, а потом улучшишь, когда сделаешь как быстрее - скинь сюда код, а то тут никто не понимает, что именно ты хочешь сделать

Cate
21.11.2016
23:58:36
Так 69 rows а без него 71

Александр
21.11.2016
23:59:08
без кого? :D

Cate
21.11.2016
23:59:20
без WHERE s.id IS NULL
и это знаешь что значит? что я смотрю сейчас на те рекламные кампании, которые мне уже нельзя показывать.

Artur
22.11.2016
00:00:26
@lady_noname ты что получить-та хочешь

Cate
22.11.2016
00:00:39
мне к запросу нужно дописать кусочек.

Google

Artur
22.11.2016
00:01:00
без прелюдий

Cate
22.11.2016
00:01:02
К вот этому запросу:
SELECT c.* FROM adv_campaigns c
LEFT JOIN statistics s
ON c.id=s.campaign_id
AND s.type_id=3
AND s.uid='5'
AND s.platform_id=4
WHERE s.id IS NULL
AND c.status=3

Александр
22.11.2016
00:01:29
Мне же нужно вот что, если в этой соседней табличке есть в platform_id есть s.platform_id, но adv_campaign_id != s.campaign_id то выводить, а если равен то не выводить.
вот она же писала

Artur
22.11.2016
00:02:00

Cate
22.11.2016
00:02:26
я в упор не могу дублирования найти)

Александр
22.11.2016
00:02:39
SELECT c.* FROM adv_campaigns as c
LEFT JOIN statistics as s
ON c.id=s.campaign_id
LEFT JOIN adv_campaigns_platforms as cp
ON s.platform_id = cp.platform_id
AND s.type_id=#{STATS_TYPE_APPROVAL}
AND s.uid=?
AND s.platform_id=?
WHERE s.id IS NULL
AND c.status=3
AND cp.adv_campaign_id IS NULL
Где ты там дублирование увидел?

Cate
22.11.2016
00:03:13

Artur
22.11.2016
00:03:17
у тебя 1 статистика на 1 компанию?

Cate
22.11.2016
00:03:33
нет

Artur
22.11.2016
00:03:47
а получается что так )

Cate
22.11.2016
00:04:00
хоть 100, или 1000
там все.
с разными статусами
переходы, трэкинг, переводы денег
большой лог работы апишки
здесь как раз отфильтровывается то, что мне нельзя показывать
если есть хоть одна строка попадающая под параметры - кампания не должна показываться

Google

Artur
22.11.2016
00:07:13
так у тебя будут дубли
в результате щас посмотрю

Cate
22.11.2016
00:07:22
дублей не будет
нетути
кампания то одна
уникальная

Artur
22.11.2016
00:08:59
так ты либо в коде либо где убироаешь дубли

Cate
22.11.2016
00:09:11
http://pastebin.com/Z10FkHmb
нет.
ну нет дублей)

Admin
ERROR: S client not available

Cate
22.11.2016
00:10:21
http://pastebin.com/pGqTnF6T
Я отсортировала)

Artur
22.11.2016
00:11:10
значит стата 1 всё логично :)

Cate
22.11.2016
00:11:21
стата то не одна.
кампания одна.

Artur
22.11.2016
00:12:34
у тебя ни группировок ни дистинкта

Александр
22.11.2016
00:12:57
:D
Ты хоть понимаешь что ей нужно?

Google

Александр
22.11.2016
00:13:15
Я так и не понял
:D

Artur
22.11.2016
00:13:54

Cate
22.11.2016
00:16:48

Artur
22.11.2016
00:17:12
выводит компании с дублями, если платформа равна Х или компания не равна платформе

Cate
22.11.2016
00:17:21
ctrl=# select * from statistics where uid='146' and platform_id=4 and campaign_id = 81;
id | views | views_uniques | clicks | leads | assigns | created_at | updated_at | campaign_id | click_uniques | ip | platform_id | type_id | uid | from_partnership | to_site
—----+-------+---------------+--------+-------+---------+----------------------------+----------------------------+-------------+---------------+----+-------------+---------+-----+------------------+---------
4267 | 0 | 0 | 0 | 0 | 0 | 2016-03-02 17:17:15.210915 | 2016-03-02 17:17:15.210915 | 81 | 0 | | 4 | 2 | 146 | |

Artur
22.11.2016
00:17:56
> есть в platform_id есть s.platform_id,
такое не читабельно чуть более чем полностью

Cate
22.11.2016
00:19:56
не не
погоди.
там то мы для определенной платформы выбирали.
а тут мы для чего выбираем?

Александр
22.11.2016
00:20:28
дала бы дамп 3х таблиц проще было б
без информации

Artur
22.11.2016
00:20:45

Александр
22.11.2016
00:20:47
или с 1 строчкой

Alexander
22.11.2016
00:21:35
Кать, твою проблему никто не понимает, сформулируй задачу

Artur
22.11.2016
00:22:04

Cate
22.11.2016
00:22:08

Alexander
22.11.2016
00:22:23
точнее, понимают 2 человека (Пони и Артур)

Artur
22.11.2016
00:22:24

Alexander
22.11.2016
00:24:02
я вот вообще не понимаю, что там за таблицы, что там за типы данных, за ограничения, NULL / не NULL