I'am gruplama karışımı: (tablo A artan, masa B inen) MySQL Sorgusu - sıralama ve bir tablodan şu bilgileri almaya çalışırken
- "b" göre sıralama "belirli bir değerle ilk önce (bu örnekte, u = 3) görünür - o zaman sipariş önemli değil
- N (NULL) her zaman sonunda
- iki kez (ancak tüm farklı" r "oluşabilir olması gerekir)
"ORDER BY IFNULL (u, 99999999)! = 3, u, b" kriteri 1, 2 ve 3 çalışır, ancak son olarak, hiçbir fikrim yok.
DISTINCT ile GROUP BY'de olduğu gibi hedefe ulaşamıyorum.
Herkesin bir fikri var mı? Çok teşekkürler şimdiden.
start table target table A
+----------------+ +----------------+
| id | r | u | b | | id | r | u | b |
+----------------+ +----------------+
| 1 | 1 | 1 | 9 | | 18 | 5 | 3 | 1 |
| 2 | 1 | 3 | 4 | | 2 | 1 | 3 | 4 |
| 3 | 1 | 4 | 6 | | 15 | 4 | 3 | 7 |
| 4 | 1 | 5 | 5 | | 11 | 3 | 3 | 8 |
| 5 | 2 | 1 | 2 | | * | 2 | * | * |
| 6 | 2 | 2 | 1 | | 21 | 6 | N | N |
| 7 | 2 | 4 | 5 | +----------------+
| 8 | 2 | 5 | 7 |
| 9 | 3 | 1 | 4 |
| 10 | 3 | 2 | 3 |
| 11 | 3 | 3 | 8 |
| 12 | 3 | 5 | 2 | target table B
| 13 | 4 | 1 | 3 | +----------------+
| 14 | 4 | 2 | 2 | | id | r | u | b |
| 15 | 4 | 3 | 7 | +----------------+
| 16 | 4 | 4 | 6 | | 11 | 3 | 3 | 8 |
| 17 | 5 | 2 | 9 | | 15 | 4 | 3 | 7 |
| 18 | 5 | 3 | 1 | | 2 | 1 | 3 | 4 |
| 19 | 5 | 4 | 6 | | 18 | 5 | 3 | 1 |
| 20 | 5 | 5 | 4 | | * | 2 | * | * |
| 21 | 6 | N | N | | 21 | 6 | N | N |
+----------------+ +----------------+
nasıl 'R' sütun üzerinde daha sonra 2 değer olduğunda almayı hangi satırların seçerim? Ve ben seni anladığımdan emin değilim, 'targetT' ve' targetB' 'StartTable' çıktı? – sagi
Kodunuzu gösterebilir misiniz? –
başlangıç tablosu db'deki tablo ve hedef çizelgeler benim istediğim sonuçlar – Seamanx