Según el ANSI, es un lenguaje estándar para los manejadores de bases de datos relacionales (RDBMS).
Los comandos SQL se utilizan para realizar tareas tales como insertar, actualizar o recuperar datos de una base de datos.
Algunos manejadores de bases de datos relacionales que utilizan el SQL son: Interbase, Oracle, Sybase, Microsoft SQL Server, DB2,
mySQL, MS Access, Informix, etc.
Aunque la mayoría de ellos utilizan SQL, también tienen sus propios comandos que generalmente solo se utilizan en sus bases de
datos. Sin embargo, los comandos estándares del SQL tales como "Select", "Insert", "Update", "Delete", "Create", y "Drop" se puede
utilizar para realizar casi todas las tareas necesarias en una base de datos.
Tablas
Una bases de datos relacional contiene unos o más objetos llamados las Tablas. Los datos o la información de la base de datos se
almacenan en estas tablas, las cualse son identificadas únicamente por su nombre y estan formadas de columnas y renglones. Las
columnas contienen las caracteristicas (nombre, tipo, tamaño, etc) y los renglones contienen los datos o informacion.
Comando SELECT :
Indica al servidor que la petición es para seleccionar, traer o recuperar información de una o varias tablas.
[ ] = opcional
Los nombres despues de la palabra SELECT, determinan qué columnas serán regresadas en el resultado. Se pueden seleccionar las
columnas una por una, separadas por coma, o se puede utilizar "*" para seleccionar todas las columnas.
El nombre despues de la palabra FROM, especifica la tabla o tablas a la cual se le harán las peticionnes.
La cláusula WHERE (opcional) especifica las condiciones que deberan de cumplir los registros que serán regresados.
Comando INSERT:
Indica al servidor que la petición es para insertar o agregar información a una tabla.
Para insertar registros indicamos el nombre de la tabla seguido por una lista de columnas y una lista de valores.
Los valores seran almacenados en la tabla segun la columna correspondiente. Los valores tipo texto y fecha deben ir entre apóstrofes
( ' ) o comillas(“), y los numericos no.
sintaxis:
INSERT into
"tabla_nombre"(columna1, columna2, ... ,ultima_column)
values (“valor1”, valor2, ... ,”ultimo_valor”)
Comando UPDATE :
Indica al servidor que la petición es para actualizar o modificar la información de una tabla.
Esto se debe realizar construyendo cuidadosamente la cláusula WHERE.
sintaxis:
UPDATE "tabla_nombre"
set "columna_nombre" = "nuevo_valor"
[,"siguiente_columna" = "nuevo_valor"...]
where "columna_nombre" OPERATOR "valor"
[and | or "columna_nombre" OPERATOR "valor"]
[] = optional
Comando DELETE :
Indica al servidor que la petición es para borrar información de una tabla.
No se requieren los nombres de las columnas entre la palabra DELETE y FROM, pero al igual que el update se debe construir
cuidadosamente la cláusula where, de no ser asi se borrará todo el contenido de la tabla.
sintaxis:
[ ] = optional
El comando SELECT es la base del SQL, y es probable que la mayoría de nuestras consultas o peticiones a una base de datos sean
comandos SELECT.
Este comando tiene cinco cláusulas principales a utilizar, aunque, FROM es la única cláusula requerida. Cada una de las cláusulas
tiene una selección extensa de opciones, parámetros, etc.
DISTINCT ( distintos ) es una palabra clave usada para eliminar los registros duplicados en el resultado de su peticion.
Clausula FORM (de), sirve para indicar de que tabla o tablas se van a extraer los registros.
Sintaxis:
SELECT columna1[, columna2]
FROM tabla1[,tabla2 | join tabla3]
(join = Union entre tablas)
LEFT JOIN (lo que esta de lado izq. y que puede o no estar de lado derecho) Factura Elementos
FROM FACTIMPORT LEFT JOIN ELEMFACTIMP ON (EI_NFACTIMP = IM_NFACTIMP)
FROM FACTEXPORT LEFT JOIN ELEMFACTEXP ON (EE_NFACTEXP = EX_NFACTEXP)
INNER JOIN (lo que esta de lado izq. y también de lado derecho)
FROM FACTIMPORT INNER JOIN ELEMFACTIMP ON (EI_NFACTIMP = IM_NFACTIMP)
FROM FACTEXPORT INNER JOIN ELEMFACTEXP ON (EE_NFACTEXP = EX_NFACTEXP)
RIGHT JOIN (lo que esta de lado derecho y que puede o no estar de lado izq.)
FROM FACTIMPORT RIGHT JOIN ELEMFACTIMP ON (EI_NFACTIMP = IM_NFACTIMP)
FROM FACTEXPORT RIGHT JOIN ELEMFACTEXP ON (EE_NFACTEXP = EX_NFACTEXP)
FROM (PEDIMENTOIMP
LEFT JOIN FACTIMPORT ON (IM_PEDIMENTOIMP = PI_PEDIMENTOIMP)) Facturas
LEFT JOIN ELEMFACTIMP ON (EI_NFACTIMP = IM_NFACTIMP)
Pedimentos
FROM (PEDIMENTOEXP
LEFT JOIN FACTEXPORT ON (EX_PEDIMENTOEXP =PE_PEDIMENTOEXP))
LEFT JOIN ELEMFACTEXP ON (EE_NFACTEXP = EX_NFACTEXP)
Elementos
Clausula WHERE (donde), sirve para limitar, restringir o condicionar la cantidad de registros que el SELECT debe regresar.
sintaxis:
Para agregar mas de una condición podemos utilizar (AND, OR, NOT)
Cláusula GROUP BY (agrupado por), agrupa o totaliza los registros que contienen los mismos datos en las columnas especificadas.
sintaxis:
Funciones Agregadas
Las funciones agregadas se utilizan para realizar ciertos calculos sobre las "columna retornadas" en el SELECT.
Aunque son requieridas cuando se usa la cláusula "GROUP BY", estas funciones se pueden utilizar sin la cláusula "GROUP BY".
Nota :
Cuando incluimos columnas, en el SELECT, que no llevan funciones agregadas, estas deben de incluirse en la cláusula GROUP BY .
sintaxis:
Cláusula ORDER BY (ordenado por), nos permite mostrar los resultados ordenados (ASC=ascendentes o DESC=descendentes) por
una o mas columnas especificadas. ASC es el orden por default.
sintaxis:
SELECT
FI.IM_NFACTIMP,
FI.IM_FACTFECHA,
ELI.EI_NPARTE,
ELI.EI_CANTMATERIAL,
FROM FACTIMPORT FI LEFT JOIN ELEMFACTIMP ELI
ON ( FI.IM_NFACTIMP = ELI.EI_NFACTIMP)
SELECT
IM_NFACTIMP AS FACTURA_IMPORT,
IM_TCAMBIO AS TIPO_CAMBIO,
(IM_TCAMBIO *IM_TCAMBIO ) AS OPERACION
FROM FACTIMPORT
Ejemplo1:
Mostrar NoFactura, Fecha, Clave Ped, T.Cambio, NoParte, Cantidad y Valor Unit, de las importaciones temporales
de materiales hechas en diciembre del 2001.
Ejemplo2:
Mostrar NoFactura, Fecha, Clave Ped, NoParte, Cantidad y Valor Unit, Tipo de Tasa, de las importaciones temporales
de materiales hechas entre Ene 2001 y Dic 2002, con tasa PROSEC.
Ejemplo4:
Mostrar NoFactura, Fecha, Peso Neto Total, Peso Bruto Total, de las Facturas de Importación de Diciembre del 2001.
Ejemplo5:
Mostrar NoFactura, Fecha, Cantidad Total, Balance Total, Inventario Total en Dólares, Inventario Total en Pesos, de las
Facturas de Importación de Diciembre del 2001.