Upload
elalejito7
View
55
Download
2
Embed Size (px)
Citation preview
Funciones de tiempo
Función Definición Sintaxis Argumentos Tipo devuelto
Ejemplo
DATENAME
Devuelve una cadena de caracteres que representa el
parámetro datepart especificado del parámetro date especificado.
DATENAME (datepart,
date)datepart y date nvarchar
SELECT DATENAME(day,fechaorden) from
ordenes
DATEPARTDevuelve un entero que representa el
objeto datepart especificado del objeto date especificado.
DATEPART ( datepart ,
date )datepart y date int
SELECT DATEPART(month,fechaorden)
from ordenes
DAY Devuelve un entero que representa el día (día del mes) de la date especificada. DAY ( date ) date int SELECT DAY(fechaorden) from ordenes
MONTH Devuelve un entero que representa el mes de date especificado.
MONTH ( date ) date int
SELECT MONTH(fechaorden) from ordenes
YEAR Devuelve un entero que representa la parte del año de la date especificada.
YEAR ( date ) date int
SELECT YEAR(fechaorden) from ordenes
DATEDIFF
Devuelve el recuento (entero con firma) de los límites datepart que se han
cruzado entre los valoresstartdate y enddate especificados.
DATEDIFF ( datepart , startdate , enddate )
datepart, startdate y enddate
int
SELECT DATEDIFF(DAY,fechaorden,GETDA
TE()) from ordenes
DATEADD
Devuelve un valor date con el intervalo number especificado (entero
con firma) agregado a un valordatepart especificado de ese
valor date.
DATEADD (datepart , number , date )
datepart, number y date
date, salvo los literales
de cadena.
SELECT DATEADD(DAY,5,fechaorden) from
ordenes
ISDATEDevuelve 1 si expression es un
valor date, time o datetime válido; de lo contrario, devuelve 0.
ISDATE ( expression
)
expression: expresión que se
puede convertir en una cadena de
caracteres
intselect ISDATE(fechaorden) from
ORDENES
GETDATE
Devuelve la marca de tiempo del sistema de base de datos actual como un
valor datetime sin el ajuste de zona horaria de la base de datos.
GETDATE ( ) datetime
SELECT DATEDIFF(month,fechaorden,GETD
ATE()) from ordenes
Funciones matemáticas
Función Definición Sintaxis Argumentos Tipo devuelto Ejemplo
ABS
Función matemática que devuelve el valor absoluto positivo de una
expresión numérica específica.
ABS (numeric_expre
ssion)
numeric_expression: categoría de tipo de
datos numérico exacto o numérico aproximado, excepto para el tipo de
datos bit.
Devuelve el mismo tipo que numeric_expression.
SELECT ABS(DATEDIFF(DAY,fechaorden,'200
7-06-15 00:00:00.000')) from ordenes
FLOOR
Devuelve el entero más grande que sea menor o igual que la expresión numérica
especificada.
FLOOR ( numeric_expr
ession )
numeric_expression: categoría de tipo de
datos numérico exacto o numérico aproximado, excepto para el tipo de
datos bit.
Devuelve el mismo tipo que numeric_expression.
SELECT FLOOR(PRECIOUNIT) from PRODUCTOS
POWER
Devuelve el valor de la expresión
especificada elevada a la potencia
indicada.
POWER ( float_expres
sion , y )
float_expression: expresión de tipo float o que se puede convertir a float. y: la potencia a la
que se eleva float_expression
Equivalente a float_expression.SELECT POWER(descuento,3) from
ORDENES
RAND
Devuelve un valor float pseudoal
eatorio de 0 a 1. ambos excluidos.
RAND ( [ seed ] )
seed: Es una expresión de tipo entero (tinyint,
smallint o int) que proporciona el valor de
inicialización.
floatSELECT RAND(PRODUCTOID) from
PRODUCTOS
SIGN
Devuelve el signo positivo (+1), cero (0) o negativo (-1)
de la expresión especificada.
SIGN ( numeric_expr
ession )
numeric_expression: categoría de tipo de
datos numérico exacto o numérico aproximado, excepto para el tipo de
datos bit.
Si es bigint -> bigintSi es int/smallint/tinyint -> int
Si es money/ smallmoney -> moneySi es numeric/decimal -> numeric/decimal
Si es de otro tipo -> float
SELECT SIGN(DATEDIFF(DAY,fechaorden,'2007-06-15 00:00:00.000')) from
ordenes
SQRT
Devuelve la raíz cuadrada del valor
de tipo flotante especificado.
SQRT ( float_expres
sion )
float_expression: expresión de tipo float o que se puede convertir a float. y: la potencia a la
que se eleva float_expression
floatselect sqrt(descuento) from
ORDENES
SQUARE
Devuelve el cuadrado del valor
de tipo flotante especificado.
SQUARE ( float_expres
sion )
float_expression: expresión de tipo float o que se puede convertir a float. y: la potencia a la
floatselect square(preciounit) from
Productos
que se eleva float_expression
Funciones de cadena
Función Definicion Sintaxis Argumentos Tipo devuelto Ejemplo
ASCII
Devuelve el valor de código ASCII del
carácter situado más a la izquierda de una
expresión de caracteres.
ASCII ( character_expr
ession )
character_expression: Es una expresión de tipo char o varchar.
int
SELECT ASCII(nombrecia) from
CLIENTES
CHARConvierte un código
ASCII int en un carácter.
CHAR ( integer_expres
sion )
integer_expression: Entero entre 0 y 255, NULL si no esta en el intervalo
char(1)
SELECT CHAR(CLIENTEID+96)
from CLIENTES
CHARINDEXBusca otra expresión y devuelve su posición
inicial si se encuentra.
CHARINDEX ( expressionToFind ,expressionToSearch [ , start_location ]
)
expressionToFind: Es una expresión de caracteres que contiene la secuencia que se va a buscar.
expressionToSearch: Expresión de caracteres que se va a buscar.
start_location: Expresión integer o bigint donde se inicia la búsqueda.
bigint si expressionToSearch es de
tipo varchar(max), nvarchar(max) o varbinary(max); de
lo contrario, int.
select CHARINDEX('SU',NOMBR
ECIA) from CLIENTES
DIFFERENCE
Devuelve un valor entero que indica la diferencia entre los
valores de SOUNDEX de dos expresiones de
caracteres.
DIFFERENCE ( character_express
ion , character_expressi
on )
character_expression: Es una expresión de tipo char o varchar.
int
select DIFFERENCE (NOMBRECONTACTO,'JUA
N') FROM CLIENTES
LEFT
Devuelve la parte izquierda de una
cadena de caracteres con el número de
caracteres especificado.
LEFT ( character_express
ion , integer_expression
)
character_expression: Es una expresión de tipo char o varchar.
integer_expression: Entero entre 0 y 255, NULL si no esta en el intervalo
Devuelve varchar cuando character_expression es de
un tipo de datos de caracteres no Unicode.
Devuelve nvarchar cuando character_expression es de
un tipo de datos de caracteres Unicode.
select LEFT(NOMBRECONTACT
O,3) FROM CLIENTES
LEN
Devuelve el número de caracteres de la
expresión de cadena especificada, excluidos los espacios en blanco
finales.
LEN ( string_express
ion )
string_expression: Es la cadena expression que se va a evaluar. string_expression puede ser una
constante, una variable o una columna de datos binarios o de
caracteres.
bigint si expression es de los tipos de
datos varchar(max), nvarchar(max) o varbinary(max);
en caso contrario, int.
select LEN(NOMBRECONTACTO)
FROM CLIENTES
LOWER
Devuelve una expresión de caracteres después
de convertir en minúsculas los datos de
caracteres en mayúsculas.
LOWER ( character_expr
ession )
character_expression: Es una expresión de tipo char o varchar.
integer_expression: Entero entre 0 y 255, NULL si no esta en el intervalo
varchar o bien nvarchar
select LOWER(NOMBRECIA)
FROM CLIENTES
LTRIM
Devuelve una expresión de caracteres tras
quitar todos los espacios iniciales en
blanco.
LTRIM ( character_expr
ession )
character_expression: Es una expresión de tipo char o varchar.
integer_expression: Entero entre 0 y 255, NULL si no esta en el intervalo
varchar o bien nvarcharselect LTRIM(CONTACTO)
FROM PROVEEDORES
NCHAR
Devuelve el carácter Unicode
correspondiente al código entero dado, tal como se define en el
estándar Unicode.
NCHAR ( integer_expres
sion )
integer_expression: Entero entre 0 y 65535, NULL si no esta en el intervalo
nchar(1) cuando la intercalación de la base de datos predeterminada no
admite caracteres complementarios.
nvarchar(2) cuando la intercalación de la base de
datos predeterminada admite caracteres complementarios.
SELECT NCHAR(EMPLEADOID+96
) FROM EMPLEADOS
PATINDEX
Devuelve la posición inicial de la primera
repetición de un patrón en la expresión
especificada, o ceros si el patrón no se
encuentra, en todos los tipos de datos de texto
y caracteres.
PATINDEX ( '%pattern%' , expression )
pattern: contiene la secuencia que se va a buscar. Se pueden usar
caracteres comodín; sin embargo, el carácter % debe ir delante y detrás
de pattern. expression: normalmente una columna en la que se busca el
patrón especificado.
bigint si expression es de los tipos de
datos varchar(max) o nvarchar(max); de lo contrario, int.
SELECT PATINDEX('%AL%',NOMBRECONTACTO)
FROM CLIENTES
QUOTENAME
Devuelve una cadena Unicode con los delimitadores
agregados para convertirla en un
identificador delimitado válido de SQL Server.
QUOTENAME ( 'character_str
ing' [ , 'quote_character
' ] )
character_string': Es una cadena de datos de caracteres Unicode.
character_string es de tipo sysname y tiene un límite de 128 caracteres.
'quote_character': Es una cadena de un solo carácter que se utiliza como
delimitador.
nvarchar(258)
SELECT QUOTENAME (NOMBRE,'[]') FROM
EMPLEADOS
REPLACE
Reemplaza todas las instancias de un valor
de cadena especificado por otro valor de
cadena.
REPLACE ( string_express
ion , string_pattern , string_replaceme
nt )
string_expression: Es la expresión de cadena que se va a buscar.
string_pattern: Es la subcadena que se va a buscar. string_replacement:
Es la cadena de reemplazo.
Devuelve nvarchar si uno de los argumentos de
entrada tiene el tipo de datos nvarchar; de lo contrario, REPLACE
devuelve varchar. Devuelve NULL si alguno de los argumentos es NULL.
SELECT REPLACE(DESCRIPCION,'
POLLO','CARNE') FROM PRODUCTOS
REPLICATERepite un valor de cadena un número
especificado de veces.
REPLICATE ( string_expression ,integer_exp
ression )
string_expression: Es una expresión de un tipo de datos binario o de
cadena de caracteres. integer_expression: Es una expresión
de cualquier tipo entero, incluido bigint. Si integer_expression es
negativo, se devuelve NULL.
Devuelve el mismo tipo que string_expression.
SELECT REPLICATE(DESCRIPCION
,2) FROM PRODUCTOS
REVERSEDevuelve el orden
inverso de un valor de cadena.
REVERSE ( string_express
ion )
string_expression es una expresión de un tipo de datos binario o de
cadena.varchar o bien nvarchar
SELECT REVERSE(DESCRIPCION)
FROM PRODUCTOS
RIGHT
Devuelve la parte derecha de una cadena
de caracteres con el número de caracteres
especificado.
RIGHT ( character_expr
ession , integer_expressi
on )
character_expression: Es una expresión de datos binarios o de
caracteres, puede ser una constante, una variable o una columna.
integer_expression:Es un entero positivo que especifica cuántos
caracteres de character_expression se devolverán
Devuelve varchar cuando character_expression es de
un tipo de datos de caracteres no Unicode.
Devuelve nvarchar cuando character_expression es de
un tipo de datos de caracteres Unicode.
Devuelve nvarchar cuando character_expression es de
un tipo de datos de caracteres Unicode.
SELECT RIGHT(NOMBREPROV, 3)
FROM PROVEEDORES
RTRIM
Devuelve una cadena de caracteres después
de truncar todos los espacios en blanco
finales.
RTRIM ( character_expr
ession )
character_expression: Es una expresión de datos de caracteres.
character_expression puede ser una constante, una variable o una
columna de datos de caracteres o binarios.
varchar O bien nvarchar
SELECT RTRIM(CONTACTO)
FROM PROVEEDORES
SOUNDEX
Devuelve un código de cuatro caracteres (SOUNDEX) para
evaluar la semejanza de dos cadenas.
SOUNDEX ( character_expr
ession )
character_expression: Es una expresión alfanumérica de datos de
caracteres. character_expression puede ser una constante, una
variable o una columna.
varchar
SELECT SOUNDEX(DESCRIPCION)
FROM PRODUCTOS
SPACE Devuelve una cadena de espacios repetidos.
SPACE ( integer_expres
sion )
integer_expression: Es un entero positivo que indica el número de
espacios. Si integer_expression es negativo, se devuelve una cadena de
tipo NULL.
varchar
SELECT NOMBREPROV+SPACE(5
0)+CONTACTO FROMPROVEEDORES
STR
Devuelve datos de caracteres convertidos
a partir de datos numéricos.
STR ( float_expression [ , length
[ , decimal ] ] )
float_expression: expresión de tipo float o que se puede convertir a float.
y: la potencia a la que se eleva float_expression: Es una expresión de tipo de datos numéricos aproximados (float) con separador decimal. length:
Es la longitud total. decimal: Es el número de posiciones a la derecha
del separador decimal.
varchar
SELECT STR(PRECIOUNIT, 6, 2)
FROM PRODUCTOS
STUFF
La función STUFF inserta una cadena en
otra. Elimina una longitud determinada de caracteres de la
primera cadena a partir de la posición de inicio
y, a continuación, inserta la segunda
cadena en la primera, en la posición de inicio.
STUFF ( character_expression , start ,
length , replaceWith_expr
ession )
character_expression: Es una expresión de datos de caracteres.
start: Es un valor entero que especifica la ubicación donde comienzan la eliminación y la
inserción. length: Es un entero que especifica el número de caracteres
que se elimina. replaceWith_expression: Es una
expresión de datos de caracteres.
Devuelve datos de caracteres
si character_expression es de alguno de los tipos de
datos de caracteres admitidos.
SELECT STUFF(NOMBRECIA,1,1,'
NOMBRE:') FROM CLIENTES
SUBSTRING
Devuelve parte de una expresión de
caracteres, binaria, de texto o de imagen en
SQL Server 2012.
SUBSTRING ( expression ,start , length )
expression: Es una expresión de tipo character, binary, text, ntext o
image. start: Es un entero o una expresión bigint que especifica dónde comienzan los caracteres devueltos. Si start es menor que 1, la expresión
devuelta comenzará en el primer carácter especificado en expression. length: Es un entero positivo o una
expresión bigint que especifica cuántos caracteres de expression se
van a devolver.
PENDIENTE
SELECT SUBSTRING(NOMBRECIA,
1,5) FROM CLIENTES
UNICODE
Devuelve el valor entero, según la
definición del estándar Unicode, para el primer carácter de la expresión
de entrada.
UNICODE ( 'ncharacter_ex
pression' )
ncharacter_expression ': Es una expresión de tipo nchar o nvarchar. int
SELECT UNICODE(NOMBREPROV)
FROM PROVEEDORES
UPPER
Devuelve una expresión de caracteres con datos
de caracteres en minúsculas convertidos
a mayúsculas.
UPPER ( character_expr
ession )
character_expression: Es una expresión de datos de caracteres.
character_expression puede ser una constante, una variable o una
columna de datos de caracteres o binarios.
varchar o bien nvarchar
SELECT UPPER(NOMBREPROV) FROM PROVEEDORES