У меня следующий запрос:
select a.clei, a.partNumber,
(
SELECT count(*) FROM
( SELECT * from search_upload_data s where a.clei is not null AND a.clei = s.clei
UNION
SELECT * from search_upload_data s where a.partNumber is not null AND a.partNumber = s.partNumber
) as t1
) as total
from api_analytics_data a
Выдает ошибку:
Error Code: 1054. Unknown column 'a.clei' in 'where clause'
Я предполагаю, что MySQL не разрешит ссылку соединения во внутреннем SQL, но яЯ не уверен, как обойти это.
Мне нужен счет из search_upload_data, см. SQL Fiddle здесь: http://sqlfiddle.com/#!9/172ac/2
<=========================================================================>
ДОПОЛНИТЕЛЬНОЕ ПРИМЕЧАНИЕ
Мне нужно выяснить, как это сделать с помощью UNION.Условия ИЛИ в ответах каждого работают в небольшом масштабе, но не работают с реальной БД с большим количеством данных.
Вот объяснение (для ответа Раджата):