我有3個查詢根據條件檢索最大值。從三個不同的查詢中獲取最大數
select max(to_number(substr(attr_value,9)))+1
from circ_inst inner
join circ_attr_settings
on circ_inst.circ_inst_id=circ_attr_settings.circ_inst_id
and val_attr_inst_id=1045
where circ_attr_settings.attr_value like 'IPANEMA-%'
select max(to_number(substr(attr_value,10)))+1
from circ_inst inner
join circ_attr_settings
on circ_inst.circ_inst_id=circ_attr_settings.circ_inst_id
and val_attr_inst_id=1045
where circ_attr_settings.attr_value like 'FIREWALL-%'
select max(to_number(substr(attr_value,16)))+1
from circ_inst
inner join circ_attr_settings
on circ_inst.circ_inst_id=circ_attr_settings.circ_inst_id
and val_attr_inst_id=1045
where circ_attr_settings.attr_value like 'LAYER2 SWITCH-%'
我想獲得的最大數出這3個查詢(如果3個查詢的結果分別爲6430,6434和6418的話,我想獲得的值「6434」,這是的。最大的三種結果
我試着用max(query1,query2,query3)
,但沒有成功
謝謝你的答案......可能是我比較喜歡這個,因爲它並不需要三個查詢 – Techie 2012-07-19 13:29:15
這是一個更好的解決方案,特別是如果選擇的值可能需要在將來改變。 – 2012-07-19 13:36:19
那麼,這個解決方案確實要求文本中只有一個「 - 」,並且它將數字部分分開。雖然這似乎是該領域的標準。 – 2012-07-19 13:37:39