Orden de Fecha

01/04/2004 - 18:05 por Ricardo Uribe | Informe spam
Tengo esta consulta:
SELECT TOP 100 PERCENT dbo.Documento.TipoMovimiento,
dbo.Documento.NumeroMovimiento, dbo.Documento.AlmacenOrigen,
dbo.Documento.AlmacenDestino,
dbo.Documento.CodigoProveedor + ' ' + dbo.Proveedor.Nombre AS Proveedor,
'G' + ' ' + dbo.Documento.NumeroDocumento AS
NumeroDocumento, CONVERT(varchar(10), dbo.Documento.FechaMovimiento, 103)
AS FechaMovimiento
FROM dbo.Documento INNER JOIN
dbo.Proveedor ON dbo.Documento.CodigoProveedor dbo.Proveedor.CodigoProveedor
WHERE (dbo.Documento.TipoMovimiento = 'I')
ORDER BY FechaMovimiento

bueno cuando saco la consulta, me sale el orden pero por el primer valor de
la fecha, es decir por los dias, primero los dias 01 de cualquier año,
despues los 02 y así sucesivamente

Preguntas similare

Leer las respuestas

#1 Maximiliano D. A.
01/04/2004 - 19:55 | Informe spam
hola eso es porque no lo volviste a convertir a Datetime me explico?

O sea, convertiste primero a char y lo dejaste asi, entonces se esta
ordenando asi, si eso lo convertis con otro convert a Datetime listo el
pollo!!!

Me explico o necesitas un poco de codigo?

Bye


Salu2
Maxi
Buenos Aires Argentina
Desarrollador Microsoft 3 Estrellas .NET
[Maxi_accotto[arroba]speedy[punto]com[punto]ar
MSN:


"Ricardo Uribe" escribió en el mensaje
news:
Tengo esta consulta:
SELECT TOP 100 PERCENT dbo.Documento.TipoMovimiento,
dbo.Documento.NumeroMovimiento, dbo.Documento.AlmacenOrigen,
dbo.Documento.AlmacenDestino,
dbo.Documento.CodigoProveedor + ' ' + dbo.Proveedor.Nombre AS Proveedor,
'G' + ' ' + dbo.Documento.NumeroDocumento AS
NumeroDocumento, CONVERT(varchar(10), dbo.Documento.FechaMovimiento, 103)
AS FechaMovimiento
FROM dbo.Documento INNER JOIN
dbo.Proveedor ON dbo.Documento.CodigoProveedor > dbo.Proveedor.CodigoProveedor
WHERE (dbo.Documento.TipoMovimiento = 'I')
ORDER BY FechaMovimiento

bueno cuando saco la consulta, me sale el orden pero por el primer valor


de
la fecha, es decir por los dias, primero los dias 01 de cualquier año,
despues los 02 y así sucesivamente







Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.618 / Virus Database: 397 - Release Date: 09/03/2004
Respuesta Responder a este mensaje
#2 Ricardo Uribe
02/04/2004 - 17:05 | Informe spam
Te explicas muy bien, y eso hice, pero cuando pongo eso me sale este
mensaje, "La conversión del tipo de datos char a datetime produjo un valor
datetime fuera de intervalo", lo raro es que mi campo ya es del tipo
datetime.

Ahora bueno ya hice varias preguntas, con respecto a ese problema que he
estado teniendo, lo que pasa es que migre una tabla de movimientos de
Articulos de Fox a SQL, y el campo FechaMovimiento lo migró como tipo char,
lo trate de convertir a datatime y no me dejaba, entonces busque las fechas
que podrian estar mal con un ISDATE(FechaMovimiento)=0 , lo malo es que me
devuelve fechas que a mi parecer no estan mal por ejemplo en este formato
"2003-12-15". Eso me parecio raro.

Lo que hice ahora es un programita en Visual Basic utilize esa consulta y
converti todos esas fechas a este formato 15/12/2003 y los volvia a agregar.
Despues de hacer esto si me dejo convertir mi campo FechaMovimiento al tipo
DateTime.

Despues recien hice la consulta, para ordenar por fecha
CONVERT(varchar(10),FechaMovimiento,103), bueno asi tambien
CONVERT(DATETIME,CONVERT(VARCHAR(10),FechaMovimiento,103)) pero ahi sale en
otro formato y si lo pongo asi
CONVERT(DATETIME,CONVERT(VARCHAR(10),FechaMovimiento),103) me sale "Error de
desbordamiento aritmético al convertir expression al tipo de datos
datetime".

Espero entiendas mi respuesta.



"Maximiliano D. A." <maxi_accotto[arroba]speedy[.]com[.]ar> escribió en el
mensaje news:#
hola eso es porque no lo volviste a convertir a Datetime me explico?

O sea, convertiste primero a char y lo dejaste asi, entonces se esta
ordenando asi, si eso lo convertis con otro convert a Datetime listo el
pollo!!!

Me explico o necesitas un poco de codigo?

Bye


Salu2
Maxi
Buenos Aires Argentina
Desarrollador Microsoft 3 Estrellas .NET
[Maxi_accotto[arroba]speedy[punto]com[punto]ar
MSN:


"Ricardo Uribe" escribió en el mensaje
news:
> Tengo esta consulta:
> SELECT TOP 100 PERCENT dbo.Documento.TipoMovimiento,
> dbo.Documento.NumeroMovimiento, dbo.Documento.AlmacenOrigen,
> dbo.Documento.AlmacenDestino,
> dbo.Documento.CodigoProveedor + ' ' + dbo.Proveedor.Nombre AS


Proveedor,
> 'G' + ' ' + dbo.Documento.NumeroDocumento AS
> NumeroDocumento, CONVERT(varchar(10), dbo.Documento.FechaMovimiento,


103)
> AS FechaMovimiento
> FROM dbo.Documento INNER JOIN
> dbo.Proveedor ON dbo.Documento.CodigoProveedor > > dbo.Proveedor.CodigoProveedor
> WHERE (dbo.Documento.TipoMovimiento = 'I')
> ORDER BY FechaMovimiento
>
> bueno cuando saco la consulta, me sale el orden pero por el primer valor
de
> la fecha, es decir por los dias, primero los dias 01 de cualquier año,
> despues los 02 y así sucesivamente
>
>



Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.618 / Virus Database: 397 - Release Date: 09/03/2004


Respuesta Responder a este mensaje
#3 Maximiliano D. A.
02/04/2004 - 17:32 | Informe spam
hola esto funciona che

declare @date datetime

set @date = getdate()

select convert(datetime,convert(char(10),@date,104))



porque no le hechas un vistaso a este link si?

http://www.configuracionesintegrale...articulo%1

http://www.mug.org.ar/SQL/ArticSQL/244.aspx



Bye





Salu2
Maxi
Buenos Aires Argentina
Desarrollador Microsoft 3 Estrellas .NET
[Maxi_accotto[arroba]speedy[punto]com[punto]ar
MSN:


"Ricardo Uribe" escribió en el mensaje
news:%
Te explicas muy bien, y eso hice, pero cuando pongo eso me sale este
mensaje, "La conversión del tipo de datos char a datetime produjo un valor
datetime fuera de intervalo", lo raro es que mi campo ya es del tipo
datetime.

Ahora bueno ya hice varias preguntas, con respecto a ese problema que he
estado teniendo, lo que pasa es que migre una tabla de movimientos de
Articulos de Fox a SQL, y el campo FechaMovimiento lo migró como tipo


char,
lo trate de convertir a datatime y no me dejaba, entonces busque las


fechas
que podrian estar mal con un ISDATE(FechaMovimiento)=0 , lo malo es que me
devuelve fechas que a mi parecer no estan mal por ejemplo en este formato
"2003-12-15". Eso me parecio raro.

Lo que hice ahora es un programita en Visual Basic utilize esa consulta y
converti todos esas fechas a este formato 15/12/2003 y los volvia a


agregar.
Despues de hacer esto si me dejo convertir mi campo FechaMovimiento al


tipo
DateTime.

Despues recien hice la consulta, para ordenar por fecha
CONVERT(varchar(10),FechaMovimiento,103), bueno asi tambien
CONVERT(DATETIME,CONVERT(VARCHAR(10),FechaMovimiento,103)) pero ahi sale


en
otro formato y si lo pongo asi
CONVERT(DATETIME,CONVERT(VARCHAR(10),FechaMovimiento),103) me sale "Error


de
desbordamiento aritmético al convertir expression al tipo de datos
datetime".

Espero entiendas mi respuesta.



"Maximiliano D. A." <maxi_accotto[arroba]speedy[.]com[.]ar> escribió en el
mensaje news:#
> hola eso es porque no lo volviste a convertir a Datetime me explico?
>
> O sea, convertiste primero a char y lo dejaste asi, entonces se esta
> ordenando asi, si eso lo convertis con otro convert a Datetime listo el
> pollo!!!
>
> Me explico o necesitas un poco de codigo?
>
> Bye
>
>
> Salu2
> Maxi
> Buenos Aires Argentina
> Desarrollador Microsoft 3 Estrellas .NET
> [Maxi_accotto[arroba]speedy[punto]com[punto]ar
> MSN:
>
>
> "Ricardo Uribe" escribió en el mensaje
> news:
> > Tengo esta consulta:
> > SELECT TOP 100 PERCENT dbo.Documento.TipoMovimiento,
> > dbo.Documento.NumeroMovimiento, dbo.Documento.AlmacenOrigen,
> > dbo.Documento.AlmacenDestino,
> > dbo.Documento.CodigoProveedor + ' ' + dbo.Proveedor.Nombre AS
Proveedor,
> > 'G' + ' ' + dbo.Documento.NumeroDocumento AS
> > NumeroDocumento, CONVERT(varchar(10), dbo.Documento.FechaMovimiento,
103)
> > AS FechaMovimiento
> > FROM dbo.Documento INNER JOIN
> > dbo.Proveedor ON dbo.Documento.CodigoProveedor > > > dbo.Proveedor.CodigoProveedor
> > WHERE (dbo.Documento.TipoMovimiento = 'I')
> > ORDER BY FechaMovimiento
> >
> > bueno cuando saco la consulta, me sale el orden pero por el primer


valor
> de
> > la fecha, es decir por los dias, primero los dias 01 de cualquier año,
> > despues los 02 y así sucesivamente
> >
> >
>
>
>
> Outgoing mail is certified Virus Free.
> Checked by AVG anti-virus system (http://www.grisoft.com).
> Version: 6.0.618 / Virus Database: 397 - Release Date: 09/03/2004
>
>







Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.618 / Virus Database: 397 - Release Date: 09/03/2004
Respuesta Responder a este mensaje
#4 Ricardo Uribe
02/04/2004 - 19:54 | Informe spam
ok , gracias, te consulto cualquier duda.


"Maximiliano D. A." <maxi_accotto[arroba]speedy[.]com[.]ar> escribió en el
mensaje news:eh$
hola esto funciona che

declare @date datetime

set @date = getdate()

select convert(datetime,convert(char(10),@date,104))



porque no le hechas un vistaso a este link si?




http://www.configuracionesintegrale...articulo%1

http://www.mug.org.ar/SQL/ArticSQL/244.aspx



Bye





Salu2
Maxi
Buenos Aires Argentina
Desarrollador Microsoft 3 Estrellas .NET
[Maxi_accotto[arroba]speedy[punto]com[punto]ar
MSN:


"Ricardo Uribe" escribió en el mensaje
news:%
> Te explicas muy bien, y eso hice, pero cuando pongo eso me sale este
> mensaje, "La conversión del tipo de datos char a datetime produjo un


valor
> datetime fuera de intervalo", lo raro es que mi campo ya es del tipo
> datetime.
>
> Ahora bueno ya hice varias preguntas, con respecto a ese problema que he
> estado teniendo, lo que pasa es que migre una tabla de movimientos de
> Articulos de Fox a SQL, y el campo FechaMovimiento lo migró como tipo
char,
> lo trate de convertir a datatime y no me dejaba, entonces busque las
fechas
> que podrian estar mal con un ISDATE(FechaMovimiento)=0 , lo malo es que


me
> devuelve fechas que a mi parecer no estan mal por ejemplo en este


formato
> "2003-12-15". Eso me parecio raro.
>
> Lo que hice ahora es un programita en Visual Basic utilize esa consulta


y
> converti todos esas fechas a este formato 15/12/2003 y los volvia a
agregar.
> Despues de hacer esto si me dejo convertir mi campo FechaMovimiento al
tipo
> DateTime.
>
> Despues recien hice la consulta, para ordenar por fecha
> CONVERT(varchar(10),FechaMovimiento,103), bueno asi tambien
> CONVERT(DATETIME,CONVERT(VARCHAR(10),FechaMovimiento,103)) pero ahi sale
en
> otro formato y si lo pongo asi
> CONVERT(DATETIME,CONVERT(VARCHAR(10),FechaMovimiento),103) me sale


"Error
de
> desbordamiento aritmético al convertir expression al tipo de datos
> datetime".
>
> Espero entiendas mi respuesta.
>
>
>
> "Maximiliano D. A." <maxi_accotto[arroba]speedy[.]com[.]ar> escribió en


el
> mensaje news:#
> > hola eso es porque no lo volviste a convertir a Datetime me explico?
> >
> > O sea, convertiste primero a char y lo dejaste asi, entonces se esta
> > ordenando asi, si eso lo convertis con otro convert a Datetime listo


el
> > pollo!!!
> >
> > Me explico o necesitas un poco de codigo?
> >
> > Bye
> >
> >
> > Salu2
> > Maxi
> > Buenos Aires Argentina
> > Desarrollador Microsoft 3 Estrellas .NET
> > [Maxi_accotto[arroba]speedy[punto]com[punto]ar
> > MSN:
> >
> >
> > "Ricardo Uribe" escribió en el mensaje
> > news:
> > > Tengo esta consulta:
> > > SELECT TOP 100 PERCENT dbo.Documento.TipoMovimiento,
> > > dbo.Documento.NumeroMovimiento, dbo.Documento.AlmacenOrigen,
> > > dbo.Documento.AlmacenDestino,
> > > dbo.Documento.CodigoProveedor + ' ' + dbo.Proveedor.Nombre AS
> Proveedor,
> > > 'G' + ' ' + dbo.Documento.NumeroDocumento AS
> > > NumeroDocumento, CONVERT(varchar(10), dbo.Documento.FechaMovimiento,
> 103)
> > > AS FechaMovimiento
> > > FROM dbo.Documento INNER JOIN
> > > dbo.Proveedor ON dbo.Documento.CodigoProveedor
> > > dbo.Proveedor.CodigoProveedor
> > > WHERE (dbo.Documento.TipoMovimiento = 'I')
> > > ORDER BY FechaMovimiento
> > >
> > > bueno cuando saco la consulta, me sale el orden pero por el primer
valor
> > de
> > > la fecha, es decir por los dias, primero los dias 01 de cualquier


año,
> > > despues los 02 y así sucesivamente
> > >
> > >
> >
> >
> >
> > Outgoing mail is certified Virus Free.
> > Checked by AVG anti-virus system (http://www.grisoft.com).
> > Version: 6.0.618 / Virus Database: 397 - Release Date: 09/03/2004
> >
> >
>
>



Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.618 / Virus Database: 397 - Release Date: 09/03/2004


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida