Ci sono due tabelle SQL:uno-a-molti query di selezione di tutti i genitori e singolo bambino superiore per ciascun genitore
Parents:
+--+---------+
|id| text |
+--+---------+
| 1| Blah |
| 2| Blah2 |
| 3| Blah3 |
+--+---------+
Childs
+--+------+-------+
|id|parent|feature|
+--+------+-------+
| 1| 1 | 123 |
| 2| 1 | 35 |
| 3| 2 | 15 |
+--+------+-------+
voglio selezionare con singola query ogni ferro sul tavolo genitori e per ognuno singola riga dalla tabella Childs con relazione "parent" - "id" valore e il più grande valore della colonna "feature". In questo esempio risultato dovrebbe essere:
+----+------+----+--------+---------+
|p.id|p.text|c.id|c.parent|c.feature|
+----+------+----+--------+---------+
| 1 | Blah | 1 | 1 | 123 |
| 2 | Blah2| 3 | 2 | 15 |
| 3 | Blah3|null| null | null |
+----+------+----+--------+---------+
dove p = tabella Padre e c = Tabella figlio
ho cercato di LEFT OUTER JOIN e GROUP BY, ma MSSQL espresso mi ha detto che query con GROUP BY richiedono funzioni di aggregazione su tutti i campi non raggruppati. E non voglio raggrupparli tutti, ma piuttosto selezionare la riga superiore (con l'ordine personalizzato).
Sono totalmente a corto di idee ...
Questo non restituirà solo il primo bambino ogni volta –
Grazie. Risolto, ora lo sarà. – manji
Funziona! Meraviglioso! – PiotrK