Archivo de la etiqueta: sql

Sobreescribir el formato de fecha en Oracle

Oracle tiene su formato de fecha dentro de NLS_DATE_FORMAT.
El mismo puede ser consultado con:

SELECT VALUE FROM v$nls_parameters WHERE parameter ='NLS_DATE_FORMAT';

Para cambiar el valor durante la sesion actual, ejecutar:

EXECUTE IMMEDIATE 'ALTER SESSION SET NLS_DATE_FORMAT=''DD/MM/YYYY''';

Donde ‘DD/MM/YYYY’ es el formato deseado

Ver version de SQL Server en un query

Para ver la version del servidor.

SELECT 'SQL Server ' 
+ CAST(SERVERPROPERTY('productversion') AS VARCHAR) + ' - ' 
+ CAST(SERVERPROPERTY('productlevel') AS VARCHAR) + ' (' 
+ CAST(SERVERPROPERTY('edition') AS VARCHAR) + ')'

Filas con 100%

Si una fila de tu tabla tiene un valor que incluya la frase 100% proceder asi:

SELECT * FROM tablename WHERE x LIKE '%100[%]%'

o

SELECT * FROM tablename WHERE x LIKE '%100\%%' ESCAPE '\'

Obtener fechas en SQL Server

El primer dia del mes:

SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0)

El Ultimo dia del mes:

SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate()  )+1, 0));


El Lunes de la semana actual:

SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0)


Primer dia del año:

SELECT DATEADD(yy, DATEDIFF(yy,0,getdate()), 0)

Ultimo dia del mes anterior:

SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(mm,0,getdate()  ), 0));

Ultimo dia del año anterior:

SELECT dateadd(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate() ), 0))

Primer lunes del mes:

SELECT DATEADD(wk, DATEDIFF(wk,0,
dateadd(dd,6-datepart(DAY,getdate()),getdate())), 0);