2017-05-29 1 views
1

の明確な組み合わせを取得するように:行の値を取得するには、Hibernateは、私が欲しいの使用2列

col1 | col2 
-------+------- 
    1 | 2 
-------+------- 
    2 | 1 
-------+------- 
    3 | 4 
-------+------- 
    4 | 5 
-------+------- 
    4 | 3 

が生成されます。

col1 | col2 
-------+------- 
    1 | 2 
-------+------- 
    3 | 4 
-------+------- 
    4 | 5 

私はGrailsの上の休止状態でこれを取得することはできますか?あるいは誰でもMySQLの実装を提供することができます。これほど長く戦っている。

答えて

4

mysql least()greatest()演算子を使用して、より小さい数値が最初に来て、最も高い数値が後に来るようにすることができます。この方法であなたは重複を排除するために明確な使用することができます。

select distinct least(col1, fol2) as col1, greatest(col1, col2) as col2 
from yourtable 
+0

私の場合、列の実際の値は電話番号ですが、これはまだ動作しますか? – saopayne

+1

これは、MySQLだけでなく、文字列を順序付けることができるからです。 – Shadow

0

あなたが好きな2つの列グループをすることができます

は(COL2 + COL1)によってyourtableグループから選択*;

関連する問題