Las instrucciones principales de SQL se pueden clasificar en tres grupos: Data Manipulation Language (DML): SELECT, INSERT, UPDATE y DELETE, y varias instrucciones mas sirven para leer datos de las tablas, y para almacenar y modificarlos. Son la parte central del lenguaje. DDL): son las instrucciones instr ucciones que sirven para disenar la Data Definition Language (DDL) base de datos: CREATE TABLE, ALTER TABLE, ... DCL): son las instrucciones usadas para definir los L anguage (DCL) Data Control Language mecanismos de seguridad de las base de datos: GRANT, REVOKE.
SELECT
se utiliza para extraer informacion de las tablas. Se puede usar para contar el numero de registros:
mysql> SELECT * FROM editoriales; mysql> SELECT COUNT(editID) FROM editoriales;
el numero de registros unicos (DISTINCT):
mysql> SELECT COUNT(DISTINCT editID) FROM titulos;
Se pueden ordenar los resultados:
mysql> SELECT * FROM editoriales ORDER BY nombreEdit; mysql> SELECT nombreAutor FROM autores WHERE nombreAutor >= 'M';
Si queremos filtrar los resultados de un SELECT podemos poner condiciones:
mysql> SELECT nombreAutor FROM autores WHERE nombreAutor LIKE '%ar%';
INSERT
se pueden anadir registros a una tabla.
Tambien se pueden insertar varios registros a la vez:
UPDATE
DELETE
se pueden modificar registros ya existentes. En genral se usa de la forma: se pueden borrar registros de una tabla.
se pueden borrar registros de diferentes tablas a la vez:
mysql> SELECT nombreAutor FROM autores WHERE IDautor IN (1, 7, 37); INSERT INTO titulos (titulo, año) VALUES ('MySQL', 2007) INSERT INTO titulos VALUES (NULL, 'MySQL', '', 1, NULL, NULL, NULL, 2007, NULL, NULL, NULL) INSERT INTO titulos (titulo, año) VALUES ('tituloA', '2007'), ('tituloB', 2007), ('tituloC', 2007) UPDATE nombre_de_tabla SET columna1=valor1, columna2=valor2, ... WHERE id_columna=n DELETE FROM nombre_de_tabl a WHERE id_columna=n DELETE t1, t2 FROM t1, t2, t3 WHERE condicion1 AND condicion2 ... DELETE titulos FROM titulos, rel_titulo_autor, autores WHERE titulos.tituloID = titulo_autor.tituloID AND autores.autorID = rel_titulo_autor.autorID AND autores.nombreAutor = 'Costa Pau'
DELETE y UPDATE
DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM tbl_name [WHERE where_definition] [ORDER BY ...] [LIMIT row_count] UPDATE [LOW_PRIORITY] [IGNORE] tbl_name SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_condition] [ORDER BY ...] [LIMIT row_count]