2012-03-08 2 views
1

У нас есть база данных Web Analytics с 2 таблицами Таблица 1 и Таблица 2, как показано ниже. enter image description hereМожет ли быть достигнуто с использованием союза MYSQL?

Мы действительно могли бы сделать с некоторыми входами здесь, чтобы отобразить желаемый результат в виде одной строки.

Большое спасибо

X

+0

Там нет единого элемента данных, которые ссылаются Purchase A2 на Quote_received_1. Откуда вы знаете, что они идут вместе? –

+0

Джим, справочные данные и cookieid являются общими для двух таблиц. –

ответ

1
SELECT 
    A.Name, 
    A.ref_num Policy_number, 
    B.QNum Quote_number 
FROM 
    (
     SELECT AA.Name,BB.ref_num FROM 
     (SELECT Name,ref_num FROM Table1 WHERE Name='Purchase' AND Cookieid=123456) AA 
     INNER JOIN Table2 BB USING (Reference) 
    ) A, 
    (
     SELECT BB.ref_num QNum FROM 
     (SELECT * FROM Table1 WHERE Name='Quote' AND Cookieid=123456) AA 
     INNER JOIN Table2 BB USING (Reference) 
    ) B 
; 

Все, что вам нужно сделать, это установить Cookieid в обоих подзапросов.

Убедитесь, что этот индекс:

ALTER TABLE Table1 ADD INDEX Cookieid_Name_ndx (Cookieid,Name); 
+0

Спасибо Роландо. Подзапросы, выполняемые на их собственных работах, прекрасны, но если я запускаю весь запрос, он выдает синтаксическую ошибку «Ошибка синтаксиса 1064 рядом с (SELECT BB.ref_num QNum .....) –

+0

Я добавил запятую после подзапроса A. Попробуйте еще раз, пожалуйста ... – RolandoMySQLDBA

+0

Работает! Вы - звезда :-) Приветствует человека. –

Смежные вопросы