13
Funciones de Agregado Las funciones de agregado se usan dentro de una cláusula SELECT en grupos de registros para devolver un único valor que se aplica a un grupo de registros. AVG Utilizada para calcular el promedio de los valores de un campo determinado COUNT Utilizada para devolver el número de registros de la selección SUM Utilizada para devolver la suma de todos los valores de un campo determinado MAX Utilizada para devolver el valor más alto de un campo especificado MIN Utilizada para devolver el valor más bajo de un campo especificado
14 Supongamos la BD para una librería con la siguiente estructura
15 Mostrar todos los datos que están en la tabla libros Select * from libros Otra opción es poner exactamente qué campos quiere mostrar.
16 Otras consultas select titulo, precio, precio*1.15 from libros select titulo, precio, precio*.15 from libros where precio>250 select titulo, precio, precio*.15 from libros where precio>250 order by precio select titulo, precio, precio*.15 from libros where precio between 220 and 300 order by precio
17 Consultas que implican más de una tabla:Mostrar apellido del autor y el título del libro. select autorlibro.apellidos, libros.titulo from autorlibro, libros where libros.ISBN= autorlibro.ISBN
18 Más consultas select autorlibro.apellidos, libros.titulo from autorlibro, libros where libros.ISBN= autorlibro.ISBN and autorlibro.apellidos like 'Jo%
Si hacemos la siguiente consulta: SELECT * FROM ventas
La siguiente consulta: select sum(preciounidad*cantidad) from ventas select sum(preciounidad*cantidad) from ventas where fecha = '2003-12-13' Arrojaría
19
select autorlibro.apellidos, libros.titulo, libros.precio from autorlibro, libros where libros.ISBN= autorlibro.ISBN and autorlibro.apellidos like 'Joy% order by titulo
select autorlibro.apellidos, libros.titulo, libros.precio from autorlibro, libros where libros.ISBN= autorlibro.ISBN and (autorlibro.apellidos like 'Joy%' or autorlibro.apellidos like 'Br%') order by titulo
20 La instrucción DELETE Crea una consulta de eliminación que elimina los registros de una o más de las tablas listadas en la cláusula FROM que satisfagan la cláusula WHERE. Esta consulta elimina los registros completos, no es posible eliminar el contenido de algún campo en concreto. Su sintaxis es:
DELETE FROM Tabla WHERE criterio Ejemplo: delete from ventas where fecha >= '2003-12-16'
21 INSERT Insertar un único Registro INSERT INTO Tabla (campo1, campo2, .., campoN) VALUES (valor1, valor2, …, valorN)
INSERT INTO ventas (id, RFC, ISBN, Cliente, Fecha, Cantidad, PrecioUnidad) VALUES (5, 'SAHC-850226', '33-588-37741-x', 'Santos Hernandez Cristina', '2003-12-14', 6, 250) Si los datos del registro a insertar le son enviados en el mismo orden en que están definidos en la tabla, se puede usar la siguiente sintaxis INSERT INTO Tabla VALUES (valor1, valor2, …, valorN) También es posible insertar datos generados por una consulta. INSERT INTO Tabla SELECT TablaOrigen.* FROM TablaOrigen
22 Actualización de valores No genera ningún resultado. Para saber qué registros se van a cambiar, hay que examinar primero el resultado de una consulta de selección que utilice el mismo criterio y después ejecutar la consulta de actualización.
Update tabla set campo1=valor1, campo2=valor2 [, ] where condiciones
update libros set precio=precio*0.95 update libros set sueldo=sueldo*1.05 where sueldo > 45.50
23 USANDO PHP y MySQLConexión a la BD < ?php function Conectarse() { if (!($link=mysql_connect("localhost","usuario","Password"))) { echo "Error conectando a la base de datos."; exit(); //es posible también la instrucción die(mensaje); } if (!mysql_select_db("base_datos",$link)) { echo "Error seleccionando la base de datos."; exit(); } return $link; } $link=Conectarse(); echo "Conexión con la base de datos conseguida.< br>"; mysql_close($link); //cierra la conexion ?>
24 Instrucciones para conexión a BD en MySQL Al ejecutar la instrucción mysql_connect se crea un vínculo entre la base de datos y la pagina PHP, este vínculo será usado posteriormente en las consultas que hagamos a la base de datos.
Finalmente, una vez que hemos terminado de usar el vínculo con la base de datos, lo liberaremos con la instrucción mysql_close para que la conexión no quede ocupada.
mysql_query sirve para hacer una consulta a la base de datos en el lenguaje de consultas SQL
mysql_fetch_array se extraen los datos de la consulta a un array.
mysql_free_result liberamos la memoria usada en la consulta.
25
< body> < ?php include("conex.php"); //en este archivo está la función conectarse $link= conectarse(); $result = mysql_query("select titulo, precio from libros",$link); ?> < TABLE BORDER=1 CELLSPACING=1 CELLPADDING=1> < TR>< TD>Titulo< /TD>< TD>Precio< /TD>< /TR> < ?php
while($row = mysql_fetch_array($result)) { printf("< tr>< td>%s< /td>< td>%s< /td>< /tr>", $row[titulo"],$row[precio"]); } mysql_free_result($result); mysql_close($link); ?> < /table> < /body>
26 Inserción de registros < ?php include("conex.php");
$link=Conectarse(); //Petición de los datos desde la otra forma $nombre=$_GET['nombre']; $apellidos=$_GET['apellidos'];
//ejecución de la inserción mysql_query ("insert into prueba (Nombre,Apellidos) values ('$nombre','$apellidos')",$link);
mysql_close($link); ?>
27 Bibliografía Tutoriales SQL http://www.programacion.com/tutorial/sql/ http://www.wwits.net/programs/dbtutorindex.phtml
PHP y MySQL http://www.webestilo.com/php/php07a.phtml
Libros: Database Design Guide Pervasive Software (e-book) FUNDAMENTOS DE BASES DE DATOS – KORTH, HENRY F.
Página anterior | Volver al principio del trabajo | Página siguiente |