Frage : aufgeteilte Reihen in einer Tabelle in die Gruppen basiert auf Kriterien

hallo haben Gurus,

i eine Tabelle als unten. ich muss die Daten in der Tabelle in 5 Gruppen für alle Reihen mit status='F und der Zuordnung von mehr als nicht 200 Reihen pro Gruppe gleichmäßig aufspalten, obwohl ich mehr als 1000 Reihen mit Status haben kann = ' F, während ich 1000 nur auf einmal holen muss. auch die Gruppen sollten verursacht werden, nur wenn das Gesamtnr. von Reihen mit status= " F " 40 nur und jederzeit übersteigen und sie nicht mehr als 1000 Reihen holen. auch, wenn die Tabelle nur hat zu sagen, 100 Reihen mit Status F, dann, das ich 5 Gruppen mit 20 Dank der Reihen each.
im Voraus für Ihre Hilfe haben muss.
since, das dieses ich dringend ist, zuweisen 500 Punkte it.

table A 0:

filename varchar (35)
status varchar (15)

thanks

Antwort : aufgeteilte Reihen in einer Tabelle in die Gruppen basiert auf Kriterien

ich bereits gegeben die Frage, die um > 40 kümmert und Status = ' F und notiere <� 1001="">
Unter ist die ntile Frage für die selben, die um allen drei oben kümmern können.

Dateinamen, den Status vorwählen, ntile (5) über (Auftrag durch Dateinamen) mygroup
von (
von mytable vorwählen wo status='F
und (Zählimpuls (*) von mytable vorwählen, wo status='F') >40 und rownum <� 1001="">)
Auftrag durch mygroup;

Ich denke, dass wir nicht die below Frage benötigen, wie Sie sie mit NTILE Funktion leicht tun können… Ich gebe gerade die geänderte Version hier außerdem.

Dateinamen, Status, Umb. (Eisenbahn, mygroup 5)+1 vorwählen von
(
Dateinamen, Status, rownum Eisenbahn vorwählen von mytable
wo Status = ' F
und (Zählimpuls (*) von mytable vorwählen wo status='F') >40
)
wo Eisenbahn <� 1001="">orer durch mygroup;

Danke,
Weitere Lösungen  
 
programming4us programming4us