Foros del Web » Programación para mayores de 30 ;) » .NET »

DataTable.Select en campo tipo Datetime

Estas en el tema de DataTable.Select en campo tipo Datetime en el foro de .NET en Foros del Web. Hola Es posible hacer una expresion para que el DataTable.Select sobre un campo datetime me devuelva todos los registros de la fecha exacta que le ...
  #1 (permalink)  
Antiguo 27/02/2008, 10:29
 
Fecha de Ingreso: abril-2005
Mensajes: 501
Antigüedad: 19 años
Puntos: 1
De acuerdo DataTable.Select en campo tipo Datetime

Hola
Es posible hacer una expresion para que el DataTable.Select sobre un campo
datetime me devuelva todos los registros de la fecha exacta que le mande por ejemplo de la fecha 20/02/2008.

buscando me dijeron que haga algo asi:
datatable.Select("Date > #20/02/2008# AND Date < #21/02/2008#");


lo que pasa es que ese campo "Date" es de tipo datetime en mi datatable, estoy utilizando un date picker que me devuelve la fecha en formato d/m/a
pero ese select solo me funciona cuando le mando el formato m/d/a es decir asi si me funciona:
datatable.Select("Date > #02/20/2008# AND Date < #02/21/2008#");
imagino que tengo que castear la fecha del datapicker a m/d/a pero eso no malograra el codigo cuando lo pase a idioma regional gracias porm sus respuestas



Saludos
  #2 (permalink)  
Antiguo 27/02/2008, 17:17
Avatar de jlbautista  
Fecha de Ingreso: enero-2007
Ubicación: Durango, Méx.
Mensajes: 175
Antigüedad: 17 años, 3 meses
Puntos: 1
Re: DataTable.Select en campo tipo Datetime

Tal vez te pueda ayudar usar la clausula BETWEEN de SQL para las comparaciones con rangos.

En cuanto a la fecha, puedes formatear desde tu query usando alguna máscara de formato fecha, para eso sería necesario saber q Manejador de BD usas. La cosa es q los valores en la columna DATE como los del parámetro sean del mismo formato.

En Oracle por ejemplo, usamos algo como to_char(Date,'DD MM YY') Date para dar un formato de 27 02 08

Por cierto, el BETWEEN funciona en algo como "Date Between <fecha inicial> and <fecha final>", pero en realidad no se si eso te sirva dentro del SELECT a la tabla en VS

Espero se resuelva, sino, aqui seguimos...
  #3 (permalink)  
Antiguo 28/02/2008, 08:33
 
Fecha de Ingreso: abril-2005
Mensajes: 501
Antigüedad: 19 años
Puntos: 1
Re: DataTable.Select en campo tipo Datetime

Muchas gracias por los comentarios , revisan el mètodo select del datatable no soporta la "BETWEEN" lo que pasa es que a mi me mandan un datatable ya creado x medio de un web service y ahora el usario ve todos los datos que trae , pero tiene la opcion si él desea de poder filtrarlos por fecha por decir quiere ver todos los examens q se crearon el 28/02/2008.. ese scampo en mi datatable es de tipo datetime pero como este programa lo van a usar en diferentes regiones nosotros sabemos q el formato d fecha cambia de d/m/y a m/d/y mi pregunta como puedo hacer la consulta a la fecha sin interesar la consiguracion regional... gracias.
  #4 (permalink)  
Antiguo 28/02/2008, 08:35
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 16 años, 7 meses
Puntos: 87
Re: DataTable.Select en campo tipo Datetime

formato de fecha universal asi no importa la region

yyyy-mm-dd

el buen rootk tiene algo de info sobre ello pero en gral si tu tienes diferentes mercados lo mejor es guardar neutralmente y mostrar acorde a la cultura en la q se esta

saludos
peter
  #5 (permalink)  
Antiguo 03/03/2008, 10:52
 
Fecha de Ingreso: abril-2005
Mensajes: 501
Antigüedad: 19 años
Puntos: 1
Re: DataTable.Select en campo tipo Datetime

Cita:
Iniciado por Peterpay Ver Mensaje
el buen rootk tiene algo de info sobre ello pero en gral si tu tienes diferentes mercados lo mejor es guardar neutralmente y mostrar acorde a la cultura en la q se esta
amigo no tendras esos enlaces donde el amigo rootk habla sobre las fechas y dime no tendras algun ejmplito de como mostrar la fecha segun la cultura .. gracias
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:52.