ENTRE OTROS.
Para cada
columna, además del tipo, podemos definir otras propiedades:
NOT NULL: No
se puede introducir valores nulos.
DEFAULT valor:
Para definir un valor por defecto.
PRIMARY KEY:
La clave primaria de la relación. Los valores deben ser únicos y no nulos. Una
tabla, como es lógico, sólo puede tener una clave primaria.
COMMENT
"comentario": Comentarios varios sobre el campo..
ETC.
Las
restricciones posibles para la tabla son:
PRIMARY KEY (campo1, campo2, ...): Para indicar el campo o campos que
conforman la clave primaria.
KEY (campo1, campo2, ...): Para crear una clave no primaria ni única.
Esto creará un índice para el campo.
INDEX (campo1, campo2, ...): Sinónimo de KEY.
FOREIGN KEY (campo1, campo2, ...) REFERENCES tabla (campo3, campo4,
...): Para crear una clave foránea o ajena. Sigue el mismo formato
queREFERENCES para las columnas.
CHECK (expresion): En teoría, para definir otras restricciones. En
realidad esta opción se admite por el parser, pero se ignora. Tenemos que
recurrir a triggers o disparadores.
Para poder eliminar una tabla se necesita el comando DROP TABLE TABLA;
Para modificar una tabla es el
con el comando ALTER TABLE este comando también lo podemos usar para eliminar
columnas, cambiar la definicion de las columnas, etc.
Para insertar
valores en una tabla, si vamos a dar valores a todas las columnas como en
ejemplo que se muestra:
INSERT INTO usuario VALUES (1, "Pablo Santander", "Calle Bolivia 18", "Madrid", 17);
Si sólo vamos
a dar valores solo a algunas columnas hay que indicar a cuáles específicamente.
Para insertar
varias tuplas con un solo INSERT solo hay que separarlas con comas como en el
ejemplo siguiente:
INSERT INTO usuario VALUES
(3, "Marta Marsopa", "Calle Italia 4", "Madrid", 58),
(4, "Jaime Torres", "Avenida de Barcelona 12", "Valladolid" , 37),
(10, "Juan Martero", "Calle Madrid 12", "Barcelona", 26);
Para
seleccionar tuplas se utiliza SELECT. Basta con especificar qué columnas
queremos seleccionar de las tuplas y la tabla en la que se encuentran:
SELECT nombre, direccion
FROM usuario;
Si queremos
seleccionar todos los campos podemos usar el caracter * como atajo.
También
podemos usar funciones en las expresiones que determinan lo que estamos
seleccionando. En este caso se usa LOWER, que transforma una cadena en
minúsculas:
SELECT LOWER(nombre), LOWER(direccion)
FROM usuario;
Para agrupar
las tuplas por un determinado campo:
SELECT ciudad, COUNT(ciudad)
FROM usuario
GROUP BY ciudad;
Para
seleccionar solo algunas tuplas de entre el resultado de un GROUP
BY se puede utilizar la cláusula HAVING:
SELECT ciudad, COUNT(ciudad)
FROM usuario
GROUP BY ciudad DESC
HAVING COUNT(ciudad) < 1;
Para limitar
el número de tuplas que queremos que devuelva SELECT se
utiliza LIMIT:
SELECT *
FROM usuario
LIMIT 2;
Si usaramos
un RIGHT JOIN ocurriría algo semejante con las tuplas de la tabla
derecha, asegurándonos de que se mencionen todos los blogs, aunque no tengan un
usuario asociado:
SELECT nombre, titulo
FROM usuario RIGHT JOIN blog ON usuario.id_usuario = blog.id_usuario;
No hay comentarios:
Publicar un comentario