/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
Convert date og order by
Fra : Soeren Pedersen


Dato : 11-10-01 19:38

Hej

Jeg har et par problemer med Convert:
Det foelgende virker fint indtil jeg har to forskellige StartTime med den
samme dato,
men med forskellig klokkeslet.

SELECT DISTINCT CONVERT(datetime,StartTime,103) as myDate from
tblProdProduction order by myDate DESC

Giver:
myDate
---------------------------
2001-05-23 12:00:00.000
2001-05-23 08:00:00.000
2001-01-23 08:00:00.000
1972-05-23 08:00:00.000

Og det var jo ikke lige meningen.
Hvis jeg skifter datetime ud med nchar (nchar,StartTime,103) er resultatet
ikke sorteret efter Dato.
Hvad goer jeg?.

Mvh
Soeren Pedersen



 
 
Peter Lykkegaard (12-10-2001)
Kommentar
Fra : Peter Lykkegaard


Dato : 12-10-01 07:01


"Soeren Pedersen" <soerenlp@noskispam_lakemoon.com> wrote in message
news:0Elx7.6093$w5.39618@news.indigo.ie...
> Hej
>
> Jeg har et par problemer med Convert:
> Det foelgende virker fint indtil jeg har to forskellige StartTime med den
> samme dato,
> men med forskellig klokkeslet.
>
> SELECT DISTINCT CONVERT(datetime,StartTime,103) as myDate from
> tblProdProduction order by myDate DESC
>
Hvad har du defineret StartTime (i din tabel) som?
Hvis det er DateTime, så sorterer du på feltet i stedet for den beregnede
værdi

mvh/Peter Lykkegaard



Soeren Pedersen (15-10-2001)
Kommentar
Fra : Soeren Pedersen


Dato : 15-10-01 14:44

Hej Peter.

StartTime er defineret som DateTime.
Problemet er jo at jeg vil have en liste med DISTINCT datoer og
noget i retning af:
===
SELECT DISTINCT CONVERT(nchar,StartTime,103) as myDate,StartTime from
tblProdProduction order by StartTime DESC
===
returnere stadig to datoer for 23/05/2001 fordi tiden ikke er
den samme:
myDate StartTime
------------ ----------------------
23/05/2001 2001-05-23 12:00:00.000
23/05/2001 2001-05-23 08:00:00.000

Mvh
Soeren PEdersen

> > Det foelgende virker fint indtil jeg har to forskellige StartTime med
den
> > samme dato,
> > men med forskellig klokkeslet.
> >
> > SELECT DISTINCT CONVERT(datetime,StartTime,103) as myDate from
> > tblProdProduction order by myDate DESC
> >
> Hvad har du defineret StartTime (i din tabel) som?
> Hvis det er DateTime, så sorterer du på feltet i stedet for den beregnede
> værdi




Peter Lykkegaard (15-10-2001)
Kommentar
Fra : Peter Lykkegaard


Dato : 15-10-01 16:05


"Soeren Pedersen" <soerenlp@noskispam_lakemoon.com> wrote in message
news:YKBy7.7151$w5.45928@news.indigo.ie...
> Hej Peter.
>
> StartTime er defineret som DateTime.
> Problemet er jo at jeg vil have en liste med DISTINCT datoer og
> noget i retning af:
> ===
> SELECT DISTINCT CONVERT(nchar,StartTime,103) as myDate,StartTime from
> tblProdProduction order by StartTime DESC
> ===
> returnere stadig to datoer for 23/05/2001 fordi tiden ikke er
> den samme:
> myDate StartTime
> ------------ ----------------------
> 23/05/2001 2001-05-23 12:00:00.000
> 23/05/2001 2001-05-23 08:00:00.000
>
Sorry man skal som bekendt læse hvad der står

SELECT DISTINCT CONVERT(nchar,StartTime,112) as myDate FROM
tblProdProduction order by StartTime DESC

112 = ISO = YYMMDD

Såvidt jeg kan se i BOL (Books OnLine) så er der ikke direkte mulighed for
årstal med 4 cifre
Evt skal du ud i noget gymnastik med DateTime funktioner
Da datoer i de forsk århundereder giver en "konflikt"

Læg mærke at din StartTime også vil drille da den svjh vil med som en del af
din DISTINCT

mvh/Peter Lykkegaard






mvh/Peter Lykkegaard



Kristian Damm Jensen (17-10-2001)
Kommentar
Fra : Kristian Damm Jensen


Dato : 17-10-01 08:48

Peter Lykkegaard wrote:
>
<snip>
> SELECT DISTINCT CONVERT(nchar,StartTime,112) as myDate FROM
> tblProdProduction order by StartTime DESC
>
> 112 = ISO = YYMMDD
>
> Såvidt jeg kan se i BOL (Books OnLine) så er der ikke direkte mulighed for
> årstal med 4 cifre

Eh? SOm jeg husker det (jeg har ikke længere adgang til manualerne) så
betyder 100-delen netop at man får århundredet med.

Altså 12: YYMMDD
112: HHYYMMDD


--
Kristian Damm Jensen | Feed the hungry. Go to
kristian-damm.jensen@cgey.dk | http://www.thehungersite.com
Two wrongs doesn't make a right, but three lefts does.



Peter Lykkegaard (17-10-2001)
Kommentar
Fra : Peter Lykkegaard


Dato : 17-10-01 10:09


"Kristian Damm Jensen" <kristian-damm.jensenRE@MOVEcgey.com> wrote in
message news:3BCD37B1.765911C6@MOVEcgey.com...
> Peter Lykkegaard wrote:
> >
> <snip>
> > SELECT DISTINCT CONVERT(nchar,StartTime,112) as myDate FROM
> > tblProdProduction order by StartTime DESC
> >
> > 112 = ISO = YYMMDD
> >
> > Såvidt jeg kan se i BOL (Books OnLine) så er der ikke direkte mulighed
for
> > årstal med 4 cifre
>
> Eh? SOm jeg husker det (jeg har ikke længere adgang til manualerne) så
> betyder 100-delen netop at man får århundredet med.
>
> Altså 12: YYMMDD
> 112: HHYYMMDD
>
Jeg refraiser lige
Såvidt jeg kan se i BOL (Books OnLine) så er der ikke direkte mulighed for
årstal med 4 cifre uden også at få timer/minutter/sekunder etc med

mvh/Peter Lykkegaard




Kristian Damm Jensen (12-10-2001)
Kommentar
Fra : Kristian Damm Jensen


Dato : 12-10-01 12:07

Soeren Pedersen wrote:
>
> Hej
>
> Jeg har et par problemer med Convert:
> Det foelgende virker fint indtil jeg har to forskellige StartTime med den
> samme dato,
> men med forskellig klokkeslet.
>
> SELECT DISTINCT CONVERT(datetime,StartTime,103) as myDate from
> tblProdProduction order by myDate DESC
>
> Giver:
> myDate
> ---------------------------
> 2001-05-23 12:00:00.000
> 2001-05-23 08:00:00.000
> 2001-01-23 08:00:00.000
> 1972-05-23 08:00:00.000
>
> Og det var jo ikke lige meningen.

Ikke? Så må du forklare, hvad du gerne ville have ud. Så vidt jeg kan
se, er der sket en nydelig faldende sortering efter dato.

> Hvis jeg skifter datetime ud med nchar (nchar,StartTime,103) er resultatet
> ikke sorteret efter Dato.
> Hvad goer jeg?.

--
Kristian Damm Jensen | Feed the hungry. Go to
kristian-damm.jensen@cgey.dk | http://www.thehungersite.com
Two wrongs doesn't make a right, but three lefts does.


Soeren Pedersen (15-10-2001)
Kommentar
Fra : Soeren Pedersen


Dato : 15-10-01 14:45

Hej Kristian

Problemmet er jo at jeg vil have en liste med DISTINCT datoer og
ikke den samme dato to gange fordi tiden er forskelig.

Mvh
Soeren Pedersen

> > myDate
> > ---------------------------
> > 2001-05-23 12:00:00.000
> > 2001-05-23 08:00:00.000
> > 2001-01-23 08:00:00.000
> > 1972-05-23 08:00:00.000
> >
> > Og det var jo ikke lige meningen.
>
> Ikke? Så må du forklare, hvad du gerne ville have ud. Så vidt jeg kan
> se, er der sket en nydelig faldende sortering efter dato.
>
> > Hvis jeg skifter datetime ud med nchar (nchar,StartTime,103) er
resultatet
> > ikke sorteret efter Dato.
> > Hvad goer jeg?.
>
> --
> Kristian Damm Jensen | Feed the hungry. Go to
> kristian-damm.jensen@cgey.dk | http://www.thehungersite.com
> Two wrongs doesn't make a right, but three lefts does.
>



Kristian Damm Jensen (15-10-2001)
Kommentar
Fra : Kristian Damm Jensen


Dato : 15-10-01 14:55

Soeren Pedersen wrote:
>
> Hej Kristian
>
> Problemmet er jo at jeg vil have en liste med DISTINCT datoer og
> ikke den samme dato to gange fordi tiden er forskelig.
>
> > > myDate
> > > ---------------------------
> > > 2001-05-23 12:00:00.000
> > > 2001-05-23 08:00:00.000
> > > 2001-01-23 08:00:00.000
> > > 1972-05-23 08:00:00.000
> > >
> > > Og det var jo ikke lige meningen.
> >
> > Ikke? Så må du forklare, hvad du gerne ville have ud. Så vidt jeg kan
> > se, er der sket en nydelig faldende sortering efter dato.
> >
> > > Hvis jeg skifter datetime ud med nchar (nchar,StartTime,103) er
> resultatet
> > > ikke sorteret efter Dato.
> > > Hvad goer jeg?.

Nu har jeg ikke lige parameterlisten til convert liggende foran mig, men
så vidt jeg husker er 112, det eneste format, der returnerer datoen uden
klokkeslet. Alternativt (hvis du ikke kan lide den formatering 112 i
øvrigt leverer) kan du klippe klokkeslettet af med lidt
strengmanipulation. Det korte af det lange er, at du skal have en
select, hvor datoen kommer ud uden klokkeslet, før det giver mening af
benytte en select.

VH
Kristian


--
Kristian Damm Jensen | Feed the hungry. Go to
kristian-damm.jensen@cgey.dk | http://www.thehungersite.com
Two wrongs doesn't make a right, but three lefts does.


Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408928
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste