Tabeljoin, sortering, kommaseparerede udtag m.m.
Jeg har tabellen "indhold" som er opbygget på flg. måde:indholdid | tal1 | tal2 | tal3 | status
---------------------------------------
1 | 23 | 3 | 4500 | Vises
2 | 23 | 3 | 4600 | Vises
3 | 23 | 4 | 4500 | Vises
4 | 21 | 2 | 2500 | Vises ikke
5 | 21 | 2 | 2500 | Vises
6 | 21 | 2 | 2500 | Vises
7 | 45 | 5 | 2700 | Vises
8 | 21 | 2 | 2500 | Vises
9 | 23 | 3 | 2600 | Vises
10 | 45 | 5 | 2700 | Vises
Vi har så tabellen "gruppering" opbygget således:
id | indholdid | gruppeid
-------------------------
1 | 1 | 1
2 | 3 | 1
3 | 2 | 1
4 | 5 | 2
5 | 4 | 2
6 | 7 | 2
7 | 6 | 2
8 | 9 | 3
9 | 10 | 3
10 | 8 | 4
---
Jeg skal nu have et udtag, der lister alle forskellige kombinationer af tal1, tal2 og tal3 indenfor hver
gruppe. Dette skal være sorteret efter samme princip som i http://www.eksperten.dk/spm/650459 - altså først
efter tal1, så tal2 og sidst tal3.
Et eksempel-udtag med ovenstående data ser sådan ud:
UDTAG 1:
gruppeid | tal1 | tal2 | tal3 | antal
-------------------------------------
2 | 21 | 2 | 2500 | 2
2 | 21 | 2 | 2700 | 1
2 | 45 | 5 | 2700 | 1
4 | 21 | 2 | 2500 | 1
3 | 23 | 3 | 2600 | 1
3 | 45 | 5 | 2700 | 1
1 | 23 | 3 | 4500 | 1
1 | 23 | 3 | 4600 | 1
1 | 23 | 4 | 4500 | 1
Tages der forhold for status (som der skal være mulighed for), bliver det sådan her):
UDTAG 2:
gruppeid | tal1 | tal2 | tal3 | antal
-------------------------------------
2 | 21 | 2 | 2500 | 1 <-- Der er nu kun 1
2 | 21 | 2 | 2700 | 1
2 | 45 | 5 | 2700 | 1
4 | 21 | 2 | 2500 | 1
3 | 23 | 3 | 2600 | 1
3 | 45 | 5 | 2700 | 1
1 | 23 | 3 | 4500 | 1
1 | 23 | 3 | 4600 | 1
1 | 23 | 4 | 4500 | 1
Jeg vil nu have stort set det samme fortalt, blot kun med 1 linje for hvert gruppeid:
UDTAG 3: (igen med forhold for status)
gruppeid | tal1_min | tal1_max | tal1_kom | tal2_min | tal2_max | tal2_kom | tal3_min | tal3_max | tal3_kom | antal
-------------------------------------------------------------------------------------------------------------------
2 | 21 | 45 | 21,45 | 2 | 5 | 2,5 | 2500 | 2700 | 2500,2700| 3
4 | 21 | 21 | 21 | 2 | 2 | 2 | 2500 | 2500 | 2500 | 1
3 | 23 | 45 | 23,45 | 3 | 5 | 3,5 | 2600 | 2700 | 2600,2700| 2
1 | 23 | 23 | 23 | 3 | 4 | 3,4 | 4500 | 4600 | 4500,4600| 3
Sidst, vil jeg gerne selv kunne bestemme hvilke ting der kan stå på samme linje. Vil jeg kun have tal3 sammen, kommer det altså til at se således ud:
UDTAG 4: (igen med forhold for status)
gruppeid | tal1 | tal2 | tal3_min | tal3_max | tal3_kom | antal
---------------------------------------------------------------
2 | 21 | 2 | 2500 | 2700 | 2500,2700| 2
2 | 45 | 5 | 2700 | 2700 | 2700 | 1
4 | 21 | 2 | 2500 | 2500 | 2500 | 1
3 | 23 | 3 | 2600 | 2600 | 2600 | 1
3 | 45 | 5 | 2700 | 2700 | 2700 | 1
1 | 23 | 3 | 4500 | 4600 | 4500,4600| 2
1 | 23 | 4 | 4500 | 4500 | 4500 | 1
Lav UDTAG 1, UDTAG 2, UDTAG 3 og UDTAG 4 eller nogen af dem, og få points derefter :-). Spørgsmål er velkomne. Et krav er, at de skal kunne forespørges fra ASP, men kom med forslag under alle omstændigheder.
