Base de Datos SQL Cap4-6

download Base de Datos SQL Cap4-6

of 14

Transcript of Base de Datos SQL Cap4-6

  • 8/20/2019 Base de Datos SQL Cap4-6

    1/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --11 SQL Server Básico

    Funciones deFunciones deRenglón SimplesRenglón Simples

    Parte 4Parte 4

    Parte 4 SQL-Server BásicoPágina 1 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    2/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --22 SQL Server Básico

    ObjetivosObjetivos

    Al completar esta lección, deberá serAl completar esta lección, deberá sercapaz de hacer lo siguiente :capaz de hacer lo siguiente :

    Describir los diferentes tipos deDescribir los diferentes tipos defunciones disponibles en SQLfunciones disponibles en SQL

    Utilizar funciones para caracteres,Utilizar funciones para caracteres,números y fechas en la instrucciónnúmeros y fechas en la instrucciónSELECTSELECT

    Parte 4 SQL-Server BásicoPágina 2 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    3/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --33 SQL Server Básico

    Funciones de SQLFunciones de SQL

    FunciónFunciónEntradaEntrada

    argarg 11

    argarg 22

    argarg nn

    Función ejecutaFunción ejecutauna acciónuna acción

    SalidaSalida

    ResultadoResultado

    Funciones de SQL

    Las funciones son herramientas muy poderosas de SQL y pueden ser utilizadasde la siguiente forma:

    • Ejecutar cálculos sobre los datos• Modificar cálculos individuales

    Las funciones aceptan argumentos y devuelven un resultado

    Parte 4 SQL-Server BásicoPágina 3 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    4/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --44 SQL Server Básico

    Tipos deTipos de Funciones de SQLFunciones de SQL

    FuncionesFunciones

    FuncionesFuncionesRenglónRenglón --simplesimple

    FuncionesFuncionesRenglónRenglón --MúltipleMúltiple

    Funciones de SQL

    Existen dos tipos de funciones:• Funciones de Renglón-Simple• Funciones de Renglón-Múltiple

    Funciones de renglón simple

    Estas funciones operan con renglones individuales y retorna un resultado porrenglón, los tipos de función son para:

    • Caracteres• Números• Fechas

    Funciones de renglón-múltiple

    Estas funciones manipulan grupos de renglones para retornar solo un resultadopor cada grupo de registros. Estas funciones se analizaran en la siguiente lección

    Parte 4 SQL-Server BásicoPágina 4 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    5/32

  • 8/20/2019 Base de Datos SQL Cap4-6

    6/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --66 SQL Server Básico

    Funciones de RenglónFunciones de Renglón --simplesimple

    ConversiónConversión

    Caracter Caracter NuméricasNuméricas

    FechaFechaFecha

    FuncionesFuncionesRenglónRenglón --simplesimple

    Funciones de Renglón-Simple (Continuación)

    En esta lección trataremos las siguientes Funciones de Renglón-Simple:

    • Funciones de cadena: Aceptan parámetros tipo carácter y pueden retornartanto como caracteres como números.

    • Funciones numéricas: Aceptan parámetros tipo numérico y retornan valoresnuméricos

    • Funciones para fecha: Operan sobre valores tipo datetime

    • Funciones para conversión: Convierten un valor de un tipo a otro.

    Parte 4 SQL-Server BásicoPágina 6 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    7/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --77 SQL Server Básico

    Funciones para cadenasFunciones para cadenas

    Función deFunción de

    cadenacadena

    LOWERLOWER

    UPPERUPPER

    LEFTLEFT REPLICATEREPLICATE

    LENLEN RTRIMRTRIM

    LTRIMLTRIM SUBSTRINGSUBSTRING

    RIGHTRIGHT

    Funciones paraFunciones paraConversiónConversión

    Funciones paraFunciones paramanipular cadenasmanipular cadenas

    FUNCIONES PARA CADENASLas funciones para cadenas aceptan datos tipo carácter como entrada y puedenretornar tanto un número como un carácter. Pueden dividirse en:

    • Conversión a Mayúsculas/Minúsculas• Manipulación de cadenas

    Función: Propósito LOWER(c_expression) Retorna una cadena de caracteres convertida a

    minúsculasUPPER(c_expression) Retorna una cadena de caracteres convertida a

    mayúsculas.LEFT(c_expression) Retorna el numero de caracteres mas a la

    izquierda de la cadena.LEN(c_expression).- Retorna el numero de caracteres que contiene la

    cadena.LTRIM(c_expression).- Elimina los caracteres en blanco de la izquierda de

    c_expression.RIGHT(c_expression,n) Retorna los n caracteres más a la derecha de la

    cadena.RTRIM(c_expression).- Elimina los caracteres en blanco de la derecha de

    c_expression.SUBSTRING(c_expression).- Retorna los n caracteres de c_expression

    empezando en StaraREPLICATE (carácter,n).- Repite n varias veces carácter.

    Parte 4 SQL-Server BásicoPágina 7 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    8/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --88 SQL Server Básico

    Función Resultado

    Funciones para ConversiónFunciones para Conversión

    LOWER( ' SQL Course ' )

    UPPER( ' SQL Course ' )

    sql course

    SQL COURSE

    Funciones para conversión:

    • LOWER: Convierte una cadena a minúsculas • UPPER: Convierte una cadena a mayúsculas

    SELECT 'The job title for ' + UPPER (ename) + ' is '+ LOWER(job) As "EMPLOYEE DETAILS"

    FROM emp;

    EMPLOYEE DETAILS-----------------------------------------The job title for KING is presidentThe job title for BLAKE is managerThe job title for CLARK is managerThe job title for JONES is managerThe job title for MARTIN is salesmanThe job title for ALLEN is salesmanThe job title for TURNER is salesmanThe job title for JAMES is clerk

    Parte 4 SQL-Server BásicoPágina 8 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    9/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --99 SQL Server Básico

    LEFT( ' Good ' , 2)

    SUBSTRING( ' String ' ,1,3)

    LEN( ' String ' )

    LTRIM( ' String ' )

    RIGHT( ' Good ' , 2)

    RTRIM( ' String ' )

    REPLICATE( ' S ’, 4)

    Go

    Str

    6

    String

    od

    String

    SSSS

    Función Resultado

    Funciones para manipular cadenasFunciones para manipular cadenas

    Parte 4 SQL-Server BásicoPágina 9 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    10/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --1010 SQL Server Básico

    Funciones numéricasFunciones numéricas

    ROUND:ROUND:

    POWER:POWER:

    ABS:ABS:

    Redondea un valor a lasRedondea un valor a las

    posiciones decimales indicadas.posiciones decimales indicadas.

    Eleva una cantidad a la potenciaEleva una cantidad a la potenciaindicada.indicada.

    Retorna el valor absoluto de unaRetorna el valor absoluto de unaexpresión .expresión .

    Parte 4 SQL-Server BásicoPágina 10 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    11/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --1111 SQL Server Básico

    Utilizando la Función ROUNDUtilizando la Función ROUND

    SELECT ROUND(45.923,2), ROUND(45.923,0),ROUND(45.923,-1)

    --------------- -------------- -----------------45.920 46.000 50.000

    Utilizando la Función ROUND

    La función ROUND retorna una expresión numérica, redondea a la longitud oprecisión especificada.

    Sintaxis

    ROUND(expression, length[, function])numeric_expression : es una expresión numérica.Length : es la precisión a la que la expresión será redondeada

    • Cuando length es positivo, la expresión es redondeada al número dedecimales especificados por length.

    • Cuando length es negativo, la expresión es redondeada por el ladoizquierdo del punto decimal, como indique lenght.

    Function : Es el tipo de operación a ejecutar. Si function es omitida o tenga unvalor de 0 (default), expression es redondeada. Si se indica otro valor diferenteque 0, expression es truncada.

    Parte 4 SQL-Server BásicoPágina 11 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    12/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --1212 SQL Server Básico

    SELECT ROUND(45.923,2,1), ROUND(45.923,0,1),ROUND(45.923,-1,1)

    --------------- ------------- ---------------45.920 45.000 40.000

    Utilizando ROUND comoUtilizando ROUND comouna Función TRUNCuna Función TRUNC

    Utilizando ROUND como una función TRUNC

    Utilice la función ROUND para efectuar una función TRUNC, se debe indicar unvalor diferente de cero en el parámetro function de ROUND

    Parte 4 SQL-Server BásicoPágina 12 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    13/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --1313 SQL Server Básico

    Utilizando la Función POWERUtilizando la Función POWER

    Obtenga la raíz cuadrada del salario de todosObtenga la raíz cuadrada del salario de todos

    los empleados cuyo puesto sea “SALESMAN”.los empleados cuyo puesto sea “SALESMAN”.

    SELECT ename, sal, comm, POWER(sal, 0.5)FROM emp

    WHERE job = 'SALESMAN';

    ENAME SAL COMM---------- --------- --------- -------------

    ALLEN 1600.00 300.00 40.00 WARD 1250.00 500.00 35.36 MARTIN 1250.00 1400.00 35.36

    TURNER 1500.00 .00 38.73

    Utilizando la Función POWER

    La función POWER eleva la expresión a la potencia indicada.

    En el ejemplo, se obtiene la raíz cuadrada que es equivalente a elevar unacantidad a la potencia 0.5

    Parte 4 SQL-Server BásicoPágina 13 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    14/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --1414 SQL Server Básico

    Utilizando la Función ABSUtilizando la Función ABS

    Obtenga cuantas unidades hay entre el salario y laObtenga cuantas unidades hay entre el salario y la

    comisión para los empleados cuyo puesto seacomisión para los empleados cuyo puesto sea“SALESMAN”.“SALESMAN”.

    SELECT ename, sal, comm, ABS(sal - comm)FROM emp

    WHERE job = 'SALESMAN';

    ENAME SAL COMM---------- --------- --------- -------------

    ALLEN 1600.00 300.00 1300.00 WARD 1250.00 500.00 750.00 MARTIN 1250.00 1400.00 150.00

    TURNER 1500.00 .00 1500.00

    Utilizando la Función ABS

    Retorna el valor absoluto de una expresión.

    En el ejemplo, se obtiene la distancia en unidades de salario que existen entre lacomisión y el salario.

    Parte 4 SQL-Server BásicoPágina 14 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    15/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --1515 SQL Server Básico

    Trabajando con FechasTrabajando con Fechas

    SQL Server almacena las fechas en unSQL Server almacena las fechas en unformato numérico internamente queformato numérico internamente querepresenta : Año, Mes, Día, Hora, Minutos,representa : Año, Mes, Día, Hora, Minutos,Segundos y milésimas de segundo.Segundos y milésimas de segundo.

    GETDATE() es una función que obtiene laGETDATE() es una función que obtiene lafecha actual del sistema.fecha actual del sistema.

    Trabajando con Fechas

    Las operaciones típicas con valores de tipo datatime son “obtener la fecha y horaactuales”, “aritmetica de fechas”- ¿ Qué fecha será dentro de 50 días?” o ¿Cuálserá el día de la semana dada una fecha?.

    Parte 4 SQL-Server BásicoPágina 15 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    16/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --1616 SQL Server Básico

    Funciones para FechasFunciones para Fechas

    Agrega intervalo a la fechaindicadaDATEADD

    DATEDIFF

    DATENAME

    DATEPART

    GETDATE

    Devuelve el número deunidades entre dos fechas

    Devuelve una cadena querepresenta la fecha

    Devuelve un entero representadouna parte de la fecha

    Obtiene la fecha actual delsistema

    FUNCION DESCRIPCION

    Parte 4 SQL-Server BásicoPágina 16 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    17/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --1717 SQL Server Básico

    Función DATEADDFunción DATEADD

    DATEADD(DATEADD( datepart datepart ,, number number , date, date ))

    Retorna una nueva fecha después de agregarleRetorna una nueva fecha después de agregarlenumber number expresado comoexpresado como datepart datepart aa datedate ..

    SELECT ename, hiredate, DATEADD(mm,5,hiredate)FROM emp

    WHERE deptno = 10;

    ename hiredate---------- --------------------------- ---------------------------CLARK 1981-06-09 00:00:00.000 1981-11-09 00:00:00.000KING 1981-11-17 00:00:00.000 1982-04-17 00:00:00.000

    MILLER 1982-01-23 00:00:00.000 1982-06-23 00:00:00.000

    Funciones para Fechas

    DATEADD ( datepart, number, date)

    Retorna una nueva fecha después de agregarle number expresado como datepart a date. Datepart : indica como se va tratar el incremento, como se muestra en la siguientetabla:

    Datepart Abreviación

    Year yyQuarter qqMonth mmDay of year dy

    Day ddWeek wkHour hhMinute miSecond ssMillisecond ms

    Parte 4 SQL-Server BásicoPágina 17 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    18/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --1818 SQL Server Básico

    Función DATEDIFFFunción DATEDIFF

    DATEDIFF(DATEDIFF( datepart datepart ,, startdatestartdate ,, enddateenddate ))

    Retorna el número de unidades expresadas comoRetorna el número de unidades expresadas comodatepart datepart entre dos fechas.entre dos fechas.

    SELECT ename, hiredate,DATEDIFF(yy, hiredate, GETDATE()) Years

    FROM emp WHERE deptno = 20;

    ename hiredate Years---------- --------------------------- -----------SMITH 1980-12-17 00:00:00.000 19JONES 1981-04-02 00:00:00.000 18SCOTT 1982-12-09 00:00:00.000 17

    ADAMS 1983-01-12 00:00:00.000 16FORD 1981-12-03 00:00:00.000 18

    Funciones para Fechas

    DATEDIFF( datepart, startdate, enddate )

    Retorna el número de unidades expresadas como datepart entre dosfechas.

    En el ejemplo se obtiene los años transcurridos de la fecha de ingreso delempleado hasta el día de hoy.

    Parte 4 SQL-Server BásicoPágina 18 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    19/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --1919 SQL Server Básico

    Función DATENAMEFunción DATENAME

    DATENAME(DATENAME( datepart datepart , date, date ))

    Devuelve una cadena que representa la fechaDevuelve una cadena que representa la fechaespecificada comoespecificada como datepart datepart ..

    SELECT ename, hiredate,DATENAME(dw, hiredate) 'Day of week'

    FROM emp;

    ename hiredate Day of week---------- --------------------------- -------------------------SMITH 1980-12-17 00:00:00.000 Wednesday

    ALLEN 1981-02-20 00:00:00.000 Friday WARD 1981-02-22 00:00:00.000 Sunday

    JONES 1981-04-02 00:00:00.000 Thursday....

    Funciones para Fechas

    DATENAME(datepart, date)

    Devuelve una cadena que representa la fecha especificada como datepart.

    En el ejemplo se obtiene el nombre del día de la fecha de ingreso de todoslos empleados

    Parte 4 SQL-Server BásicoPágina 19 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    20/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --2020 SQL Server Básico

    Función DATEPARTFunción DATEPART

    DATEPART(DATEPART( datepart datepart , date, date ))

    Devuelve un entero representado una parte de laDevuelve un entero representado una parte de lafecha expresada comofecha expresada como datepart datepart ..

    SELECT ename, DATEPART(yy, hiredate) Year,DATEPART(mm, hiredate) Month,DATEPART(dd, hiredate) Day

    from emp

    ename Year Month Day---------- ----------- ----------- -----------SMITH 1980 12 17

    ALLEN 1981 2 20 WARD 1981 2 22

    ...

    Funciones para Fechas

    DATEPART(datepart, date)

    Devuelve un entero representando una parte de la fecha expresada comodatepart.

    En el ejemplo se obtiene el nombre y la fecha de ingreso de todos losempleados desglosados por año, mes y día.

    Existen funciones específicas para obtener en forma particular el año, mesy día

    YEAR (date)MONTH (date)

    DAY (date)

    SELECT ename, YEAR (hiredate) Year,MONTH(hiredate) Month,DAY (hiredate) Day

    FROM emp;

    Parte 4 SQL-Server BásicoPágina 20 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    21/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --2121 SQL Server Básico

    Funciones de ConversiónFunciones de Conversión

    ConversionesConversionesde tipo Implícitasde tipo Implícitas

    ConversionesConversionesde tipo Explícitasde tipo Explícitas

    ConversionesConversionesde tipode tipo

    Funciones de Conversión

    Existen dos tipos de conversión entre tipos de datos:

    • Conversiones de tipo Implícitas• Conversiones de tipo Explícitas

    Conversiones de tipo Implícitas : son aquellas que ocurren sin tener que realizarla conversión de tipo.

    Conversiones de tipo Explícitas: son aquellas que necesitan una conversión detipo para poder operar.

    Parte 4 SQL-Server BásicoPágina 21 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    22/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --2222 SQL Server Básico

    Funciones de Conversión CASTFunciones de Conversión CAST

    CAST(CAST( expressionexpression ASAS data_ data_ typetype ))

    ConvierteConvierte expressionexpression al tipo indicado poral tipo indicado pordata_ data_ typetype ..

    SELECT ename,CAST( hiredate AS char) "Hire Date"

    FROM emp;

    ename Hire Date---------- ------------------------------SMITH Dec 17 1980 12:00AM

    ALLEN Feb 20 1981 12:00AM WARD Feb 22 1981 12:00AM

    ........

    Funciones de Conversión CAST

    CAST (expression AS data_type)

    Convierte expression al tipo indicado por data_type.

    En el ejemplo, se muestran todos los empleados con su fecha de ingresoexpresada como una cadena de caracteres.

    Parte 4 SQL-Server BásicoPágina 22 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    23/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --2323 SQL Server Básico

    Funciones de Conversión CONVERTFunciones de Conversión CONVERT

    CONVERTCONVERT ((data_ data_ typetype [([(lengthlength )],)], expressionexpression [,[, stylestyle ])])

    ConvierteConvierte expressionexpression al tipo indicado por al tipo indicado por data_ data_ typetype con la longitud dada por con la longitud dada por lengthlengthutilizando el estiloutilizando el estilo stylestyle ..

    SELECT ename,CONVERT( char(10), hiredate, 103) "Hire Date”

    FROM emp;

    ename Hire Date---------- ----------SMITH 17/12/1980

    ALLEN 20/02/1981 WARD 22/02/1981

    ........

    Funciones de Conversión CONVERT

    CONVERT (data_type[(length)], expression [,style])

    Convierte expression al tipo indicado por data_type con la longitud dada por lengthutilizando el estilo style.

    CAST(expression AS data_type)

    La función CONVERT es un sinónimo de la función CAST.

    En el ejemplo, se muestran todos los empleados con su fecha de ingresoexpresada como una cadena de caracteres con el formato británico dd/mm/yyyy

    Parte 4 SQL-Server BásicoPágina 23 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    24/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --2424 SQL Server Básico

    Función ISNULLFunción ISNULL

    Convierte un valor nulo a un valor indicadoConvierte un valor nulo a un valor indicado

    Tipos de datos comunes que se utilizanTipos de datos comunes que se utilizanpara evitar un NULL sonpara evitar un NULL son datedate ,, character character yy numericnumeric ..

    Ejemplos :Ejemplos :

    ISNULL(ISNULL( commcomm , 0), 0)

    ISNULL(ISNULL( hiredatehiredate ,GETDATE()),GETDATE())

    ISNULL(ISNULL( job job ,, 'No Job'No Job Yet Yet '' ))

    Función ISNULL

    Convierte un valor nulo a un valor indicado.

    Sintaxis

    NVL (expr1, expre2 )

    Donde

    Expr 1 Es el valor o expresión que contiene valores nulosExpr 2 Es el valor por el que se remplazará NULL

    Parte 4 SQL-Server BásicoPágina 24 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    25/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --2525 SQL Server Básico

    Utilizando la Función ISNULLUtilizando la Función ISNULL

    SELECT ename, sal, comm, (sal*12)+ISNULL(comm,0)FROM emp;

    ENAME SAL COMM ---------- --------- --------- --------------------SMITH 800.00 9600.00

    ALLEN 1600.00 300.00 19500.00 WARD 1250.00 500.00 15500.00

    JONES 2975.00 35700.00 MARTIN 1250.00 1400.00 16400.00

    ...14 rows selected.

    Función ISNULL

    En el ejemplo se calcula el sueldo anual mas la comisión, los empleados que noganan comisión se reemplaza el valor nulo por cero, por lo que el resultado semuestra en el ejemplo. En caso contrario si no se utiliza la función ISNULL elresultado no es el mismo.

    Parte 4 SQL-Server BásicoPágina 25 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    26/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --2626 SQL Server Básico

    Funciones AnidadasFunciones Anidadas

    Funciones de RenglónFunciones de Renglón --simple pueden estarsimple pueden estaranidadas a cualquier nivel.anidadas a cualquier nivel.

    Las funciones anidadas son evaluadas desde laLas funciones anidadas son evaluadas desde lamás interna a la más externa.más interna a la más externa.

    F3 (F2 (F1(col,arg1) ,arg2) , arg3)

    Paso 1 = Resultado 1

    Paso 2 = Resultado 2

    Paso 3 = Resultado 3

    Funciones Anidadas

    Funciones de Renglón-Simple pueden estar anidadas a cualquier nivel deprofunidad. Las funciones anidadas son evaluadas desde la más interna a la másexterna.

    Parte 4 SQL-Server BásicoPágina 26 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    27/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --2727 SQL Server Básico

    Funciones AnidadasFunciones Anidadas

    SELECT ename,ISNULL(CONVERT(char(10), mgr), 'No manager') Manager

    FROM empORDER BY mgr

    ename Manager---------- -----------------------------KING No Manager

    Parte 4 SQL-Server BásicoPágina 27 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    28/32

    Funciones de renglón simples 4Funciones de renglón simples 4 --2828 SQL Server Básico

    PrácticasPrácticas

    Crear consultas utilizando funcionesCrear consultas utilizando funcionesnuméricas, fecha y carácter numéricas, fecha y carácter

    Realizar cálculos sobre fechasRealizar cálculos sobre fechas

    Verificar la fecha de ingreso de losVerificar la fecha de ingreso de losempleadosempleados

    Parte 4 SQL-Server BásicoPágina 28 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    29/32

    Práctica 4

    1.Haga una consulta para desplegar la fecha actual.

    Date

    ----------------------------------------1999-03-18 15:14:54.90

    2. Cree un query para mostrar el numero de empleado, el nombre, salario y el salarioincrementado en 15%. Guarde su consulta como s04q02.sqlempno ename sal New Salary------- ------------- ----------- ----------------7369 SMITH 800.0 920.00007499 ALLEN 1600.00 1840.00007521 WARD 1250.00 1437.50007566 JONES 2975.00 3421.2500

    7654 MARTINI 1250.00 1437.50007698 BLAKE 2850.00 3277.50007782 CLARK 2450.00 2817.50007788 SCOTT 3000.00 3450.00007839 KING 5000.00 5750.00007844 TURNER 1500.00 1725.00007876 ADAMS 1100.00 1265.00007900 JAMES 950.00 1092.50007902 FORD 3000.00 3450.00007934 MILLER 1300.00 1495.0000

    3. Modifique El query s04q02.sql para agregar una columna adicional, en la que obtenga elmonto de incremento del salario.empno ename sal New Salary Increase------- ------------- ----------- ---------------- ------------7369 SMITH 800.0 920.0000 120.00007499 ALLEN 1600.00 1840.0000 240.00007521 WARD 1250.00 1437.5000 187.50007566 JONES 2975.00 3421.2500 446.25007654 MARTINI 1250.00 1437.5000 187.50007698 BLAKE 2850.00 3277.5000 427.50007782 CLARK 2450.00 2817.5000 367.5000

    7788 SCOTT 3000.00 3450.0000 450.00007839 KING 5000.00 5750.0000 750.00007844 TURNER 1500.00 1725.0000 225.00007876 ADAMS 1100.00 1265.0000 165.00007900 JAMES 950.00 1092.5000 142.50007902 FORD 3000.00 3450.0000 450.00007934 MILLER 1300.00 1495.0000 195.0000

    Parte 4 SQL-Server BásicoPágina 29 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    30/32

    Practica 4 (continuación)

    4. Muestre el nombre de empleado, fecha de ingreso expresada como se muestra en elejemplo.ename Hire Date

    ----------- ----------------

    SMITH Wednesday; Dec 23 1980ALLEN Friday; Feb 26 1981WARD Sunday; Feb 28 1981JONES Thursday; Apr 8 1981MARTIN Monday; Oct 4 1981BLAKE Friday; May 7 1981CLARK Tuesday; Jun 15 1981SCOTT Thursday; Dec 15 1982KING Tuesday; Nov 23 1981

    TURNER Tuesday; Sep 14 1981ADAMS Wednesday; Jan 18 1983JAMES Thursday; Dec 9 1981FORD Thursday; Dec 9 1981MILLER Saturday; Jan 29 1982

    5. Muestre el nombre de empleado y numero de meses trabajados hasta la fecha, paraaquellos que pertenecen al departamento 30, ordenado por los meses trabajados y pornombre.ename Months Worked

    ---------- ---------------------JAMES 207MARTIN 210TURNER 210BLAKE 214ALLEN 217WARD 217

    Parte 4 SQL-Server BásicoPágina 30 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    31/32

    Práctica 4 (continuación)

    6. Haga una consulta que dibuje una grafica mostrando el nivel de ingresos del empleado,como se muestra.ename sal

    ------------- ----------- ----------------------------------------------------------------SMITH 800.0 ********ALLEN 1600.00 ****************WARD 1250.00 ************JONES 2975.00 *****************************MARTIN 1250.00 ************BLAKE 2850.00 ****************************CLARK 2450.00 ************************SCOTT 3000.00 ******************************KING 5000.00 *************************************TURNER 1500.00 ***************

    ADAMS 1100.00 ***********JAMES 950.00 *********FORD 3000.00 ******************************MILLER 1300.00 *************

    7. Escriba una consulta que muestre el nombre “tipo oración” (la primer letra mayúscula yel resto en minúsculas) y la longitud del nombre, para aquellos empleados cuyo nombreempiece ya sea con J, A o M.

    Name Length---------- -----------

    Allen 5Jones 5Martin 6Adams 5James 5Miller 6

    Parte 4 SQL-Server BásicoPágina 31 de 32

  • 8/20/2019 Base de Datos SQL Cap4-6

    32/32

    Práctica 4 (continuación)

    8. Muestre el nombre, la fecha de ingreso en formato (ss/mm/yyyy) y el nombre del día enel que ingresó.ename Hire Date Date of Week

    ----------- ------------- ----------------SMITH 17/12/1980 WednesdayALLEN 20/02/1981 FridayWARD 22/02/1981 SundayJONES 02/04/1981 ThursdayMARTIN 28/09/1981 MondayBLAKE 01/05/1981 FridayCLARK 09/06/1981 TuesdaySCOTT 09/12/1982 ThursdayKING 17/11/1981 TuesdayTURNER 08/09/1981 Tuesday

    ADAMS 12/01/1983 WednesdayJAMES 03/12/1981 ThursdayFORD 03/12/1981 ThursdayMILLER 23/01/1982 Saturday

    9. Haga una consulta que muestre la comisión de los empleados. Si el empleado no tienemuestre el mensaje “No commission”ename Comm----------- -----------------SMITH No Commission

    ALLEN 300.00WARD 500.00JONES No CommissionMARTIN 1400.00BLAKE No CommissionCLARK No CommissionSCOTT No CommissionKING No CommissionTURNER 0.00ADAMS No CommissionJAMES No CommissionFORD No CommissionMILLER No Commission