することによりにより、グループやご注文は、私のようなテーブルを持っている:MYSQL -
ID Field1 Field2 Field3
1 Apple Fruit Cheap
2 Apple Fruit Eatable
3 Apple Food Something
4 Banana Fruit Cheap
5 Banana Food Eatable
6 Cat Pet Weird
7 Cat Pet Friend
8 Cat Pet Amazing
9 Cat Animal Cheap
が、私は明確なフィールド1、フィールド2の要素を取得したいとソートフィールド3含む「格安」で。 私はこれを期待している:ID = 2は同じFIELD1を有するもの
ID Field1 Field2 Field3
1 Apple Fruit Cheap
4 Banana Fruit Cheap
9 Cat Animal Cheap
3 Apple Food Something
5 Banana Food Eatable
6 Cat Pet Weird
結果がIDを持つ行している= 2,7,8-が除去され、ID = 1、ID = 7,8としてFIELD2は、同じFIELD1を有しますID = 6としてフィールド2。 ID = 1およびID = 2は、同じField1およびField2を有する。 ID = 6,7,8のうちの1つだけが、別個のField1、Field2を有するために結果に入る。
私は「グループ化」と「フィールド別の並べ替え」を試しましたが、「グループ化」することで必要な行がなくなりました。たとえば、ID = 1のグループ化がなく、ID = 2の行が存在するとします。
私の現在のクエリは次のとおりです。
ID = 2の代わりに、ID = 1は誰でも助けることができます検討している「ことで、グループ」として=「格安」フィールド3で私に2行のみを与える
select * from tbl
group by field1,field2
order by field(field3,"CHEAP") desc;
私はこれで?
ありがとうございます。
もこれを試すことができますか? – Hooch
なぜ1ではなく2を削除したいのですか? –
field3 = "Cheap"の行がすべて結果に含まれていることを確認します。私はグループの代わりに何らかのサブクエリを使うべきだと思います。 – rohan