SQL Server - Comparar smalldatetime

 
Vista:

Comparar smalldatetime

Publicado por Carlos (1 intervención) el 28/08/2014 01:19:39
que tal amigos soy nuevo usando SQL y tengo una duda... tengo una tabla llamada regTikets donde tengo informacion diversa, id del tiket, codigo de producto, y hay una columna en especial del tipo smalldatetime que se llama 'FechaEmision' , y lo que quiero hacer es que me seleccione toda la informacion de la tabla a una fecha, la consulta la hago de la siguiente manera,

Select *
From regTickets
Where FechaEmision > '10/05/2014 10:00:00 a.m'

y me sale un error que mensiona que la comparacion con el smalldatetime esta mal, quisiera pudieran ayudarme
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Comparar smalldatetime

Publicado por Pico (14 intervenciones) el 28/08/2014 17:35:40
¿Y eso de a.m qué es?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Comparar smalldatetime

Publicado por Isaias (4558 intervenciones) el 28/08/2014 19:20:22
Where FechaEmision > '20140510 10:00:00'


Las 10 son am y las 22, son pm
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Comparar smalldatetime

Publicado por Pico (14 intervenciones) el 28/08/2014 19:36:44
Le he preguntado qué es a.m, que es lo que ha puesto.

Ante merídiem será a.m. o puede que am o A.M. o AM, pero lo que no va a ser nunca es a.m , que es lo que ha puesto. A un ordenador no puedes ponerle lo primero que se te ocurra porque te dará errores como el que le da.

Me quedo sólo intentando que la gente aprenda a usar el cabezorro y no se limite solamente a copiar y pegar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Comparar smalldatetime

Publicado por Isaias (4558 intervenciones) el 28/08/2014 21:16:29
Pico

AM, PM, es una convención internacional para medir las horas de cada día, aquí la explicación:

El sistema horario de 12 horas es una convención de medición del tiempo en la que las 24 horas del día se dividen en dos períodos1 ante merídiem (a. m., español: "antes del mediodía") y post merídiem (p. m., español: "después del mediodía").2 Cada período se compone de 12 horas, cuya numeración comienza en el 12 (actuando como 0), 1, 2 y sucesivamente hasta 11. Para las doce de la mañana se recomienda el empleo de la abreviatura Md(Medio-Día).

Para TODOS los motores de bases de datos, no hay AM, PM, simplemente se manejan las medidas de 24 horas, asi explicaba que las 10 (son de mañana) y las 22 (son de noche).

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Comparar smalldatetime

Publicado por Pico (14 intervenciones) el 28/08/2014 21:29:42
Todo eso yo ya lo sé, es Carlos el que no lo sabe.

No sabe que a un motor de bases de datos no hay que ponerle ni am ni pm, y tampoco sabe que, cuando haya que ponerlo, hay que ponerlo en condiciones, no de cualquier manera. Y cualquier manera es a.m , que es lo que ha puesto. Habrá que poner a.m. o am o A.M. o AM pero ni de coña a.m (punto de final de frase).

Y lo que yo no quiero es ponerle cómo es y ya está. Quiero que se pare a pensar que lo que ha puesto, aunque los motores de bases de datos lo admitan o pidan, está mal puesto.

NO, NO, y NO quiero que la gente se pase el día copiando y pegando.

A ver si ya.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Comparar smalldatetime

Publicado por carlos (3 intervenciones) el 29/08/2014 18:10:13
esque asi me lo muestra en la base de datos, osea la base de datos funciona al cien, y lo que puse arriba es el formato en el que me guarda la fecha el tipo de dato smalldatatime
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Comparar smalldatetime

Publicado por carlos (1 intervención) el 29/08/2014 18:07:22
ya lo hice asi pero sql manda un error de comparacion de tipo char con el smalldatatime
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Comparar smalldatetime

Publicado por Carlos (3 intervenciones) el 29/08/2014 18:28:04
gracias a todos, la verdad si tienen razon en el que debemos de pensar un poco, pero tenia varias horas intentando y con la precion de mi jefe que queria el reporte, se les agradese sus comentarios y sus consejos, y si tiene razon el compañero isaias, le quite el am y me hizo la busqueda...

SELECT *
FROM regTickets
WHERE (FechaEmision > '10/05/2014 10:00:00')
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Comparar smalldatetime

Publicado por Isaias (4558 intervenciones) el 29/08/2014 21:52:41
Después de la regañada que me puso Pico, creo que de NADA SIRVIÓ la explicación que te dimos.

Amigo (Carlos), el que tu creas que la base te lo guarda en un formato es muy respetable, pero debes quitarte ese mal pensamiento, NINGÚN MOTOR guarda las fechas con un formato, lo hacen de FORMA NUMÉRICA y ANSI

yyyymmdd hh:mm:ss,nn

Por tanto, ¿porque insistes en comparar tu fecha en formato TEXTO poniéndole los / (guiones)?

La forma correcta de compara fechas es:

WHERE myCampoFecha >= 'yyyymmdd hh:mm:ss'

¿Queda claro?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Comparar smalldatetime

Publicado por carlos (3 intervenciones) el 29/08/2014 22:01:50
si me funciono como lo puse en el comen de hace rato la fecha separada por las diagonales, me marcaba error cuando comparaba y tenia las letras de a.m
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Comparar smalldatetime

Publicado por Isaias (4558 intervenciones) el 29/08/2014 23:31:13
Nunca dije que no lo hiciera, lo que dije fue que los PLANES DE EJECUCIÓN, son totalmente diferentes para cuando haces las cosas, como deben ser, ahora bien, al cliente, lo que pida...Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar