MI@
Luis Fernando Niño Ospina
SQL
SINTAXIS DE LAS SENTENCIAS PARA MANIPULACIÓN DE DATOS DEL SQL 1. FUNCIÓN SELECT SINTAXIS GENERAL: SELECT */ALL/DISTINCT/Campos FROM Tabla(s), Alias WHERE Condición 1 AND/OR/NOT Condición 2 GROUP BY Columna de Agrupación HAVING Condición ORDER BY Especificación de Ordenación (campo o su #) ASC/DESC UNION ALL SELECT ... **Los campos pueden ser físicos, calculados o valores constantes así mismo, pueden ser cualificados así: usuario.tabla.campo EJEMPLOS: •
SELECT * FROM Tabla : Selecciona y muestra todos los campos de la tabla especificada.
•
SELECT Campo1, Campo2, ..., CampoN FROM Tabla : Selecciona y muestra los campos especificados para la tabla.
•
SELECT Campo1, (Campo2*25/100) FROM Tabla : Selecciona y muesta el contenido de un campo y el resultado de multiplicar por 25 y dividir por 100 el valor contenido en otro campo de la Tabla especificada.
•
SELECT Campo1, ‘Tiene un cuadrado igual a:’, (Campo1*Campo1)
•
SELECT DISTINCT Campo1, Campo2, DISTINCT Campo3 FROM Tabla: Selecciona y muestra el contenido unificado del Campo 1 (sin datos repetidos), el contenido del campo 2 y, el contenido unificado del Campo 3.
•
SELECT Campos FROM Tabla WHERE Campo operador Valor
•
SELECT Campos FROM Tabla WHERE CampoX BETWEEN Valor1 AND Valor2
•
SELECT Campos FROM Tabla WHERE CampoX NOT BETWEEN Valor1 AND Valor2
•
SELECT Campos FROM Tabla WHERE CampoX IN (Valor1, Valor2, ...,ValorN)
1
MI@
Luis Fernando Niño Ospina
SQL
•
SELECT Campos FROM Tabla WHERE CampoX NOT IN (Valor1, Valor2, ...,ValorN)
•
SELECT Campos FROM Tabla WHERE CampoX LIKE Patrón
2. FUNCIÓN INSERT SINTAXIS GENERAL: INSERT INTO Tabla(s), Alias (Columnas,,,) VALUES (valores,,,)/SELECT EJEMPLOS: •
INSERT INTO Tabla (Campo1, Campo2, ..., CampoN) VALUES (Valor1, Null, ..., ValorN)
•
INSERT INTO Tabla VALUES (Valor1, Null, ..., ValorN)
•
INSERT INTO Tabla (Campo1, Campo2, Campo3) SELECT CampoX1, CampoX2, CampoX3 FROM Tabla WHERE Condición
3. FUNCIÓN UPDATE SINTAXIS GENERAL: UPDATE Tabla SET Campo1=Valor1, Campo2=Valor2 WHERE Condición EJEMPLOS: •
UPDATE Tabla SET Campo1=Valor1
•
UPDATE Tabla SET Campo=0 WHERE Campo IS NULL
•
UPDATE Tabla SET Campo=Valor WHERE Campo=(SELECT ...)
2
MI@
Luis Fernando Niño Ospina
SQL
4. FUNCIÓN DELETE SINTAXIS GENERAL: DELETE FROM Tabla (Columnas,,,) WHERE Condición EJEMPLOS: •
DELETE FROM TablaWHERE Campo=Condición
•
DELETE FROM Tabla
•
DELETE FROM Tabla WHERE Campo=(SELECT ...)
•
DELETE FROM Tabla IN (SELECT ...)
OPERACIONES Y VALORES SOBRE O PARA CAMPOS + : Suma dos campos o un campo y un valor - : Resta dos campos o un campo y un valor * : Producto entre dos campos o un campo y un valor / : División entre dos campo, un campo y un valor o, viceversa || : Concatenar cadenas de caracteres (Solo en algunos SQL)
*Constantes Permitidas* +/- x DAYS : Suma o Resta a una fecha x días como se especifiquen. AVG(DISTINCT Campo) : Promedio para un campo SUM (DISTINCT Campo) : Total de la suma de los valores del campo en los distintos registros. MIN(Campo) : Mínimo valor que se encuentra en un campo. MAX(Campo) : Máximo valor que se encuentra en un campo.
3
MI@
Luis Fernando Niño Ospina
SQL
COUNT(DISTINCT Campo): Cuenta el total de registros con datos para un campo. COUNT (*) : Cuenta todos los registros. NULL : Valor nulo para un campo.
CONDICIONES =, <>, >, <, >=, <= : Operadores de Igualdad, Diferencia, Mayor Que, Menor Que, Mayor Igual Que, Menor Igual Que. BETWEEN Rango Inferior AND Rango Superior : Tests para Rango entre dos valores. IN (valores) : Test de Pertenencia. LIKE Patrón ESCAPE ‘Caracter’: Test de Correspondencia con Patrón. El patrón puede incluir caracteres polivalentes como el % y caracteres comodin como _, también puede incluir ambos. IS NULL IS NOT NULL AND OR NOT
CONSTANTES SIMBÓLICAS •
USER : Nombre de Usuario actual que utiliza la base de datos. (Única constante simbólica soportada por el estándar ANSI/ISO)
•
CURRENT DATE : Fecha Actual del sistema
•
CURRENT TIME : Hora Actual del sistema
•
CURRENT TIMESTAMP : Fecha y Hora Actuales del sistema
4
MI@
Luis Fernando Niño Ospina
SQL
•
CURRENT TIMEZONE : Diferencia entre la Zona Horaria y la GMT
•
SYSDATE: Fecha y Hora Actual del sistema (solo Oracle, SQLBase)
•
ROWNUM : Número interno de fila/registro (Oracle)
•
ROWID : Número inteno de fila/registro (SQLBase)
FUNCIONES INTERNAS ADICIONALES AL ESTÁNDAR SQL ANSI/ISO MONTH(fecha) : Mes especificado en la fecha YEAR(fecha) : Año especificado en la fecha
FORMATOS DE FECHA Y HORA AMERICANO
:
MM/DD/AAAA
HH:MM AM/PM
EUROPEO
:
DD.MM.AAAA
HH.MM.SS
JAPONÉS
:
AAAA-MM-DD
HH:MM:SS
ISO
:
AAAA-MM-DD
HH:MM:SS
5