2017-01-31 9 views
0

У меня есть три таблицы, а именно ordrer, campaign_company и kontaktpersonшаблона в результате подзапроса

У меня следующий запрос, есть selger псевдоним для подзапроса и хочет, имеющий шаблон над ним -

select 
    (select ordredato from ordrer where kundenr = campaign_company.kunder_id order by ordredato desc limit 1) 
     as last_contract, 
    (select 
     (select fornavn || ' ' || etternavn from kontaktperson where ordrer.kpkode=kontaktperson.kpkode) 
     from ordrer 
     where kundenr = campaign_company.kunder_id 
    order by ordredato desc limit 1) 
     as selger 
from ordrer 
    left join campaign_company on campaign_company.sale = ordrenr 
// i tried with having to 
where 
    selger like '%string%' 

но дает столбец ошибки selger не найден

+0

Пожалуйста ** [EDIT] ** свой вопрос и добавить некоторые выборочные данные и ожидаемые результаты на основе этих данных. [** Отформатированный текст **] (http://stackoverflow.com/help/formatting), пожалуйста, [скриншоты] (http://meta.stackoverflow.com/questions/285551/why-may-i-not -Закачать-образы-оф-кода-на-так: когда-запрашиваемая-а-вопрос/285557 # 285557) –

ответ

2

Вам нужно обернуть запрос:

SELECT * FROM (<your select>) AS a WHERE selger like '%string%' 

Или вы можете изменить запрос:

SELECT * FROM (SELECT DISTINCT 
    FIRST(o2.ordredato) OVER (ORDER BY o2.ordredato) AS last_contract, 
    FIRST(k.fornavn || ' ' || k.etternavn) OVER (ORDER BY o2.ordredato)as selger 
FROM 
    order AS o 
    LEFT JOIN campaign_company ASD cc ON (cc.sale = o.ordrenr) 
    LEFT JOIN order AS o2 ON (o2.kundenr = cc.kunder_id) 
    LEFT JOIN kontaktperson AS k ON (o2.kpkode = k.kpkode) 
) AS a 
WHERE selger like '%string%' 

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

  • Нет связанных вопросов^_^