[sql2k] archief samenstellen (hoe?)

Pagina: 1
Acties:

  • shades
  • Registratie: September 2001
  • Laatst online: 10-08 15:01
Ik heb een tabel met berichten. In 1 kolom staat wanneer het bericht is aangemaakt (in de vorm dd-mm-jjjj hh:mm:ss, is smalldate datatype)

In diversie maanden van diverse jaren zijn er berichten gemaakt.
x-aantal okt-2002
geen in nov-2002
x-aantal dec-2002
geen in jan-2003
x-aantal feb-2003
x-aantal mrt-2003

Archief lijstje moet dus worden:
okt-2002
dec-2002
feb-2003
mrt-2003

Weet iemand hoe dat moet in SQL2000 ?
Ik heb op archief gezocht maar geen mogelijke oplossingen gevonden. Ik heb ook al zitten denken aan DISTINCT op die kolom maar dat schiet niet op omdat er dan ook naar de dagen en niet naar de maanden+jaren alleen wordt gekeken..

(Ik maak alles in ASP)

https://k1600gt.nl


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-08 11:40

gorgi_19

Kruimeltjes zijn weer op :9

Erhm.. Between gebruiken?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • shades
  • Registratie: September 2001
  • Laatst online: 10-08 15:01
Ik denk ook niet dat dat werkt. Dan zou ik een lus van een paar jaar moeten maken en controleren of er in die maand wat zit.. Is er geen betere methode ? of bedoel je dat niet ?

https://k1600gt.nl


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-08 11:40

gorgi_19

Kruimeltjes zijn weer op :9

shades schreef op 18 maart 2003 @ 20:38:
[...]


Ik denk ook niet dat dat werkt. Dan zou ik een lus van een paar jaar moeten maken en controleren of er in die maand wat zit.. Is er geen betere methode ? of bedoel je dat niet ?
Mjah... zit wat in.. :+

Precieze vormen ken ik niet.. Je zou eens kunnen kijken om een 'dummieveld' aan te maken in het formaat maand / jaar, en vervolgens door middel van een count en group-by statenebt de boel er uit te halen.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • shades
  • Registratie: September 2001
  • Laatst online: 10-08 15:01
gorgi_19 schreef op 18 March 2003 @ 20:40:
[...]

Mjah... zit wat in.. :+

Precieze vormen ken ik niet.. Je zou eens kunnen kijken om een 'dummieveld' aan te maken in het formaat maand / jaar, en vervolgens door middel van een count en group-by statenebt de boel er uit te halen.
Is het dan mogelijk om in een datum-veld alleen een maand+jaar op te geven.. Dat kan volgens mij niet.. Dat dummy veld in misschien een oplossing om dan gewoon keihard in een text veld mmjjjj te zetten. Dat valt sql2k niet over maar geeft wel weer meer gegevens die je eigelijk al hebt en dat wil je juist voorkomen.

https://k1600gt.nl


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-08 11:40

gorgi_19

Kruimeltjes zijn weer op :9

shades schreef op 18 maart 2003 @ 20:55:
[...]


Is het dan mogelijk om in een datum-veld alleen een maand+jaar op te geven.. Dat kan volgens mij niet.. Dat dummy veld in misschien een oplossing om dan gewoon keihard in een text veld mmjjjj te zetten. Dat valt sql2k niet over maar geeft wel weer meer gegevens die je eigelijk al hebt en dat wil je juist voorkomen.
Een oplossing om deze dmv een view weer te geven. Ik geloof dat SQL server ook Format functies kent. Ik begeef me echter op een heel grijs gebied voor mezelf; duidelijke en goede adviezen hierover kan ik niet geven.. :)

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • shades
  • Registratie: September 2001
  • Laatst online: 10-08 15:01
gorgi_19 schreef op 18 maart 2003 @ 20:57:
[...]

Een oplossing om deze dmv een view weer te geven. Ik geloof dat SQL server ook Format functies kent. Ik begeef me echter op een heel grijs gebied voor mezelf; duidelijke en goede adviezen hierover kan ik niet geven.. :)
Ik ben (duidelijk) ook niet goed thuis is sql maar met een view kan je wel lekker rommelen. Als het fout gaat krijg je vanzelf een boodschap. Heb gelukkig een boek hier hoe de syntaxen zijn. Kan dus wel even proberen met die format. Misschien is dat wel een stap in de goede richting.

https://k1600gt.nl


  • shades
  • Registratie: September 2001
  • Laatst online: 10-08 15:01
shades schreef op 18 March 2003 @ 20:59:
[...]


Ik ben (duidelijk) ook niet goed thuis is sql maar met een view kan je wel lekker rommelen. Als het fout gaat krijg je vanzelf een boodschap. Heb gelukkig een boek hier hoe de syntaxen zijn. Kan dus wel even proberen met die format. Misschien is dat wel een stap in de goede richting.
BINGO:
code:
1
2
SELECT DISTINCT SUBSTRING(CONVERT(char(10), DateTime, 105), 4, 7) AS Expr1
FROM    dbo.tbl_Messages

Was wel even kloten. Gelukkig had ik die CONVERT al eens gebruikt anders had ik me hoofd daarover ook nog moeten buigen.. DateTime is de naam van de kolom. Is volgens mij geen key-word.

Die "AS Expr1" is door de view er automatisch bijgezet maar snap niet waarom...

https://k1600gt.nl


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-08 11:40

gorgi_19

Kruimeltjes zijn weer op :9

shades schreef op 18 March 2003 @ 21:22:
Die "AS Expr1" is door de view er automatisch bijgezet maar snap niet waarom...
Dat gedeelte weet ik weer wel.. :+
Die view heeft een kolomnaam nodig, en dat is nu dus Expr1. :)

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

shades schreef op 18 maart 2003 @ 20:32:
Archief lijstje moet dus worden:
okt-2002
dec-2002
feb-2003
mrt-2003

Weet iemand hoe dat moet in SQL2000 ?
MSSQL heeft een hoop leuke datum-functies die ook in selects en aggregates te gebruiken zijn.
Ik heb thuis geen MSSQL ter beschikking, maar iets in de richting van...
code:
1
2
3
select distinct (cast(month(datumveld) as char(2)) + '-' + cast(year(datumveld) as char(4))), count(*) as totaal_berichten
from berichtentabel
group by 1

...zou aardig in de buurt moeten kunnen komen.
Het kan ook zijn dat 't voor geen meter werkt, want het is uit de losse pols ingetikt. :+

Maar hiermee, en met de online reference op MSDN moet je een heel eind kunnen komen. :)

edit:

Je was er al uit, zie ik. Heb ik helemaal voor niks de layout verneukt... :)

[ Voor 7% gewijzigd door Verwijderd op 18-03-2003 21:32 ]


  • shades
  • Registratie: September 2001
  • Laatst online: 10-08 15:01
gorgi_19 schreef op 18 March 2003 @ 21:25:
[...]

Dat gedeelte weet ik weer wel.. :+
Die view heeft een kolomnaam nodig, en dat is nu dus Expr1. :)
Ja, ik was net de boel aan het overzetten naar ASP en de kolom 'DateTime' kon hij niet vinden maar er waren wel records. Ipv 'DateTime' dus 'Expr1' ingevuld en werken.. Maar nu weet ik dus waarom
Verwijderd schreef op 18 March 2003 @ 21:29:
[...]

edit:
Je was er al uit, zie ik. Heb ik helemaal voor niks de layout verneukt... :)
:D np m8..

https://k1600gt.nl

Pagina: 1