2016-11-19 2 views
0

я понимаю, как получить самое длинное поле из одной колонки в оракуле, как показано ниже:Как получить длинные 2 соответствующих поля в оракуле

select name from daTable 
where length(name) = 
(select max(length(name)) from daTable) 

Но теперь у меня есть 2 таблицы: одна для car_make, которые имеют столбец make_description (например, Nissan), а другой для car_model, которые имеют столбец model_description (например, Tida). Как я могу получить самое длинное поле: car_make с его соответствующим car_model из двух разных таблиц?

Это структура моих таблиц:

Car_make: id_make , make_description 
Car_model: id_model, model description,P_id_make 

(где P_id_make в car_model является id_make в car_make)

ответ

0

Вы можете Concat Колонном таким образом

select a.make_description || ' ' || b.model_description as name 
    from Car_make a 
    INNER JOIN Car_model b on a.id_make = b.P_id_make 
    where length(a.make_description || ' ' || b.model_description ) = 
    (select max(a.make_description || ' ' || b.model_description) 
    from Car_make a 
    INNER JOIN Car_model b on a.id_make = b.P_id_make) 
+0

@ H.Al , У меня есть обновление answr с ... join для обеих таблиц – scaisEdge

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