2016-11-19 8 views
0

で最長2つの適切なフィールドを取得する方法:私は以下のようにOracleで1列から最長フィールドを取得する方法を理解オラクル

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

しかし、今、私は2つのテーブルを持っている:car_makeのための1つの列を持っていますmake_description(Nissanのようなもの)とcar_modelのもの(model_description(Tidaのような)の列を持つもの)。一番長いフィールドを得るにはどうすればいいのですか?2つのテーブルから適切なcar_modelを指定してcar_makeを実行しますか?

これは私のテーブルの構造である:

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

(car_modelでP_id_makeはcar_makeでid_makeです)

答えて

0

あなたはH.Al @このよう

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

列をCONCATことができ。私は両方のテーブルのために.. – scaisEdge

関連する問題