viernes, 28 de octubre de 2016

WHERE

Limitación de las Filas
Puede restringir las filas que se devuelven desde la consulta mediante la cláusula WHERE. Una cláusula WHERE contiene una condición que se debe cumplir y sigue directamente a la cláusula FROM. Si la condición es verdadera, se devuelve la fila que cumple la condición.
En la sintaxis:
  WHERE  restringe la consulta a las filas que cumplan una condición    condition    se compone de nombres de columna, expresiones,   constantes y un operador de comparación   
La cláusula WHERE puede comparar valores en columnas, valores de literales, expresiones aritméticas o funciones. Consta de tres elementos:
Nombre de columna
Condición de comparación

Nombre de columna, constante o lista de valores

                  SELECT employee_id, last_name, job_id, department_id
                     FROM   employees
                   WHERE  department_id = 90




Share:

DESCRIBE

Visualización de la Estructura de Tablas 

El comando DESCRIBE muestra los nombres de columna y los tipos de datos e indica si una columna debe contener datos (es decir, si la columna tiene una restricción NOT NULL).
En la sintaxis, tablename es el nombre de cualquier tabla, vista o sinónimo existentes a los que pueda acceder el usuario.

El ejemplo muestra información sobre la estructura de la tabla DEPARTMENTS.

                          DESCRIBE DEPARTMENTS

En la visualización resultante, Null indica que los valores para esta columna pueden ser desconocidos. NOT NULL indica que una columna debe contener datos. Type muestra el tipo de datos para una columna.




Share:

DATA TYPES

TIPO
CARACTERISTICAS
CHAR
Cadena de caracteres de longitud fija de size bytes de tamaño o size de caracteres. El tamaño máximo es de 2000 bytes o caracteres, el tamaño predeterminado y mínimo es de 1 byte
NVARCHAR2
Cadena de caracteres Unicode de longitud variable con size como máximo tamaño de longitud. El número de bytes que pueden ser hasta dos veces el tamaño de codificación AL16UTF16 y tres veces el tamaño de la codificación UTF8. El tamaño máximo está determinado por la definición del juego de caracteres nacional, con un límite máximo de 4000 bytes. Se debe especificar el size de NVARCHAR2
VARCHAR2
Cadena de caracteres de longitud variable que tiene como  tamaño máximo el valor de size en BYTE o CHAR. El tamaño máximo es de 4000 bytes o caracteres, y la mínima es de 1 byte o un carácter. Se debe especificar el tamaño de para VARCHAR2.
BINARY_FLOAT
Número en coma flotante de 32 bits. Este tipo de datos requiere 4 bytes
BINARY_DOUBLE
Número en coma flotante de 64 bits. Este tipo de datos se requieren de 8 bytes
VARCHAR
Cadena de caracteres de longitud variable que tiene como  tamaño máximo el valor de size en BYTE o CHAR. El tamaño máximo es de 4000 bytes o caracteres, y la mínima es de 1 byte o un carácter. Se debe especificar el tamaño de para VARCHAR2.
NCHAR
Cadena de caracteres de longitud fija de size caracteres de tamaño de largo. El número de bytes pueden ser hasta dos veces el tamaño de codificación AL16UTF16 y tres veces el tamaño de la codificación UTF8. El tamaño máximo está determinado por la definición del juego de caracteres nacional, con un límite máximo de 2000 bytes. El tamaño predeterminado y mínimo es de un carácter
NVARCHAR2
Cadena de caracteres Unicode de longitud variable con size como máximo tamaño de longitud. El número de bytes que pueden ser hasta dos veces el tamaño de codificación AL16UTF16 y tres veces el tamaño de la codificación UTF8. El tamaño máximo está determinado por la definición del juego de caracteres nacional, con un límite máximo de 4000 bytes. Se debe especificar el size de NVARCHAR2.
LONG
Tipo de datos de caracteres de longitud variable de hasta 2 gigabytes, o 231 -1 bytes. Permanece para compatibilidad con versiones anteriores de Oracle
LONG RAW
Datos binarios de tipo RAW de longitud variable hasta 2 gigabytes.
RAW
Datos binarios sin formato de longitud size. El tamaño máximo es de 2000 bytes. Se debe especificar el tamaño de un valor RAW.
LOB (BLOG, CLOB, NCLOB, BFILE)
Permiten almacenar y manipular bloques grandes de datos no estructurados (tales como texto, imágenes, videos, sonidos, etc) en formato binario o del carácter
BLOB
Un objeto de tipo LOB binario. El tamaño máximo es (4 gigabytes - 1) * (tamaño del bloque de la base de datos).
CLOB
Un objeto de tipo LOB que contiene caracteres de un byte o multibyte. Son compatibles tanto de ancho fijo y conjuntos de ancho variable de caracteres, con el carácter de base de datos establecida. El tamaño máximo es (4 gigabytes - 1) * (tamaño del bloque de la base de datos).
NCLOB
Un objeto de tipo LOB que contiene caracteres Unicode. Son compatible tanto de ancho fijo y conjuntos de ancho variable de caracteres, con el conjunto base de datos de carácter nacional. El tamaño máximo es (4 gigabytes - 1) * (tamaño del bloque de la base de datos). Guarda los datos nacionales sobre el conjunto de caracteres.
BFILE
Almacena datos binarios no estructurados en archivos del sistema operativo, fuera de la base de datos. Una columna BFILE almacena un localizador del archivo a uno externo que contiene los datos
ROWID
Cadena en base 64 que representa la dirección única de una fila en la tabla. Este tipo de datos es principalmente para los valores devueltos por la pseudo columna ROWID.
UROWID
Cadena en base 64 que representa la dirección lógica de una fila de una tablade índice organizado. El tamaño opcional es el tamaño de una columna de tipo UROWID de Oracle. El tamaño máximo y por defecto es de 4000 bytes.
NUMBER
Número con p precisión (parte entera) y s escala (parte decimal). La precisión p puede variar de 1 a 38. La s escala puede variar desde -84 hasta 127. Tanto la precisión y la escala se encuentran en dígitos decimales. Un valor numérico requiere 1 a 22 bytes.
FLOAT
Un subtipo del tipo de datos NUMBER con precisión p. Un valor de coma flotante se representa internamente como un NUMBER. La precisión p puede variar desde 1 hasta 126 dígitos binarios. Un valor flotante requiere 1 a 22 bytes.
DATE
Intervalo de fechas válidas del 1 de enero de 4712 antes de Cristo a el 31 de diciembre de 9999. El formato por defecto se determina explícitamente por el parámetro NLS_DATE_FORMAT o implícitamente por el parámetro NLS_TERRITORY. El tamaño es de 7 bytes. Este tipo de datos contiene los campos de fecha y hora AÑO, MES, día, hora, minuto y segundo. No tiene fracciones de segundo o de una zona horaria.
TIMESTAMP
Año, mes y día como valores de la fecha, así como la hora, minutos y segundos como valores de tiempo, donde fractional_seconds_precision es el número de dígitos en la parte fraccionaria del segundo del campo datetime. Los valoresaceptados de fractional_seconds_precision son del 0 al 9. El valor por defecto es 6. El formato por defecto se determina explícitamente por el parámetro NLS_TIMESTAMP_FORMAT o implícitamente por el parámetro NLS_TERRITORY. El tamaño es de 7 o 11 bytes, dependiendo de la precisión. Este tipo de datoscontiene los campos datetime AÑO, MES, DIA, HORA, MINUTO y SEGUNDO. Contiene las fracciones de segundo, pero no tiene una zona horaria
TIMESTAMP WITH TIME ZONE
Todos los valores de TIMESTAMP, así como el valor de tiempo de desplazamiento de la zona, donde fractional_seconds_precision es el número de dígitos en la parte fraccionaria del segundo del campo datetime. Los valoresaceptados son del 0 al 9. El valor por defecto es 6. El formato por defecto se determina explícitamente por el parámetro NLS_TIMESTAMP_FORMAT o implícitamente por el parámetro NLS_TERRITORY. El tamaño se fija en 13 bytes. Este tipo de datos contiene los campos datetime AÑO, MES, DIA, HORA, MINUTO, SEGUNDO, TIMEZONE_HOUR y TIMEZONE_MINUTE. Cuenta con las fracciones de segundo y una zona horaria explícita
TIMESTAMP WITH LOCAL TIME ZONE
Todos los valores de TIMESTAMP WITH TIME ZONE, con las siguientes excepciones:

* Los datos se normalizan con la zona horaria de base de datos cuando se almacenan en la base de datos.
* Cuando se recuperan los datos, los usuarios ven los datos en la zona de tiempo de la sesión.

El formato por defecto se determina explícitamente por el parámetro NLS_TIMESTAMP_FORMAT o implícitamente por el parámetro NLS_TERRITORY. El tamaño es de 7 o 11 bytes, dependiendo de la precisión.
INTERVAL YEAR TO MONTH
Almacena un período de tiempo en años y meses, donde year_precision es el número de dígitos en el campo datetime AÑO. Los valores aceptados son del 0 al 9. El valor predeterminado es 2. El tamaño se fija en 5 bytes.
INTERVAL DAY TO SECOND 
Almacena un período de tiempo en días, horas, minutos y segundos, donde

* day_precision es el número máximo de dígitos en el campo datetime DÍA. Los valores aceptados son del 0 al 9. El valor predeterminado es 2.
* fractional_seconds_precision es el número de dígitos en la parte fraccionaria del campo SEGUNDO. Los valores aceptados son del 0 al 9. El valor por defecto es 6.

El tamaño se fija en 11 bytes.
XMLType
Tipo de datos abstracto. En realidad se trata de un CLOB.






Share:

q - Operador de Comillas


Operador de Comillas (q) Alternativo
Muchas sentencias SQL utilizan literales de caracteres en expresiones o condiciones. Si el literal contiene una comillas simple, puede utilizar el operador de comillas (q) y seleccionar su propio delimitador de comillas.
Puede seleccionar cualquier delimitador apropiado, de un solo byte o multibyte, o cualquiera de los siguientes pares de caracteres: [ ], { }, ( ) o < >.

Mediante el operador q, los corchetes [] se utilizan como delimitador de comillas. La cadena situada entre los delimitadores de corchetes se interpreta como cadena de literales.

                                    SELECT department_name ||  
                                                    q'[, it's assigned Manager Id: ]'  
                                                    || manager_id  
                                                   AS "Department and Manager"  
                                     FROM departments;

Share:

jueves, 27 de octubre de 2016

DISTINCT



Para eliminar filas duplicadas del resultado, incluya la palabra clave DISTINCT de la cláusula SELECT justo después de la palabra clave SELECT. En el segundo ejemplo de la diapositiva, la tabla EMPLOYEES realmente contiene 20 filas, pero sólo hay siete números de departamento únicos en la tabla.
Puede especificar varias columnas después del cualificador DISTINCT. El cualificador DISTINCT afecta a todas las columnas seleccionadas y el resultado son todas las combinaciones 
distintas de las columnas.

SELECT  DISTINCT department_id, job_id  

  FROM  employees;







Share:

sábado, 14 de mayo de 2016

SELECT


Un cordial saludo,

En esta ocasión les hablare de tema de SQL un tanto introductorio de lo que es un select simple.

En SQL  utilizamos la sentencia select para seleccionar las columnas deseadas de una tabla.

Ejemplo:                    Select Nombre_Columna1, Nombre_Columna2
                                   From Tabla1;

A medida que vayamos avanzado en el tema se irán complicado las sentencias de una manera sorprendente!

Select  Columna1, count(columna2)
From tabla1;

Como pueden apreciar en el query de arriba,

SELECT: se utiliza para seleccionar solo las columnas que deseamos ver, esto quiere decir que si la tabla tiene 100 columnas, solo se mostraran las columnas que estén dentro del select.

Dato curioso: 
Las tablas de una base de datos ORACLE, pueden contener hasta 200 columnas y almacenar billones de datos.

Las columnas en el select podemos asignarles un alias.
                                               
                                 Ejemplo:    Select Columna1 AS Nombre_col
                                                    From Tabla1;

                                                   Select Columna1  Nombre_col
                                                    From Tabla1;

                                 Ejemplo 2:   Select Columna1 "Nombre columna"
                                                      From Tabla1;

En el ejemplo 1, se utiliza as de manera auxiliar no obligatoria, ya que funcionaria perfectamente sin ella,. se utiliza mas por la comprensión de código. Debemos tener en cuenta que el este nombre sera el encabezado en la base de datos y aparecerá en mayúscula, no puede tener espacios, si queremos mostrar algo personalizado, debemos utilizar "doble comillas" para que aparezca con los espacios etc.

Las comillas simples ' ' se utilizan para literales (lo valores de los registros de las tablas), y las comillas " " se utilizan para columnas en tablas,  cuando las utilicen mal es obvio que les aparecerá un error.

FROM: Tabla o Tablas pertenecientes a una base de datos dada.

Podemos concatenar columnas u palabras, numeros etc:

                     SELECT COLUMNA_1||'-'||'JUAN'
                       FROM EMPLOYEES;
                                   



Share:

miércoles, 11 de mayo de 2016

BASES DE DATOS ORACLE



Oracle Database es un sistema de gestión de base de datos de tipo objeto-relacional (ORDBMS, por el acrónimo en inglés de Object-Relational Data Base Management System), desarrollado por Oracle Corporation.
Se considera a Oracle Database como uno de los sistemas de bases de datos más completos, destacando: soporte de transacciones, estabilidad, escalabilidad, y soporte multiplataforma.[cita requerida]
Su dominio en el mercado de servidores empresariales había sido casi total hasta que recientemente tiene la competencia del Microsoft SQL Server y de la oferta de otros RDBMS con licencia libre como PostgreSQLMySQL o Firebird.

Historia

Oracle surge en 1977 bajo el nombre de SDL (Software Development Laboratories).
En 1979, SDL cambia su nombre por Relational Software, Inc. (RSI).
La fundación de SDL fue motivada principalmente a partir de un estudio sobre los SGBD (Sistemas Gestores de Base de Datos) de George KochComputer World definió este estudio como uno de los más completos jamás escritos sobre bases de datos. Este artículo incluía una comparativa de productos que dirigia a Relational Software como el más completo desde el punto de vista técnico. Esto se debía a que usaba la filosofía de las bases de datos relacionales, algo que por aquella época era todavía desconocido.
En la actualidad, Oracle (Nasdaq: ORCL) todavía encabeza la lista. La tecnología Oracle se encuentra prácticamente en todas las industrias alrededor del mundo y en las oficinas de 98 de las 100 empresas Fortune 100. Oracle es la primera compañía de software que desarrolla e implementa software para empresas cien por ciento activado por Internet a través de toda su línea de productos: base de datos, aplicaciones comerciales y herramientas de desarrollo de aplicaciones y soporte de decisiones. Oracle es el proveedor mundial líder de software para administración de información, y la segunda empresa de software.

Fuente: Wikipedia.com
https://es.wikipedia.org/wiki/Oracle_Database
Share:

Archivo

Cual es el tema de mayor interes para ti?