Ver Mensaje Individual
  #6 (permalink)  
Antiguo 14/05/2016, 15:33
saroan_sqlero
 
Fecha de Ingreso: mayo-2015
Ubicación: Vigo
Mensajes: 20
Antigüedad: 8 años, 11 meses
Puntos: 0
Respuesta: procedimiento con variable y visualizacion

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Tomando lo que pones en el primer post como ejemplo de tu idea, mas lo que te explica Libras, y agregándole ejemplos, la respuesta sería:
Código MySQL:
Ver original
  1. mysql> DROP  TABLE IF  EXISTS temporal;
  2. Query OK, 0 rows affected (0.06 sec)
  3.  
  4. mysql> CREATE TABLE IF NOT EXISTS temporal (
  5.     ->     codigo VARCHAR(5) PRIMARY KEY,
  6.     ->     nombre VARCHAR(20),
  7.     ->     precio INT(11)
  8.     -> );
  9. Query OK, 0 rows affected (0.05 sec)
  10.  
  11. mysql>
  12. mysql> INSERT INTO temporal(codigo,nombre,precio) VALUES
  13.     -> ('a001','patines',80),
  14.     -> ('a002','guantes',10),
  15.     -> ('a003','cascos',40),
  16.     -> ('a004','gafas',25),
  17.     -> ('a005','rodilleras',30),
  18.     -> ('a006','protector bucal',15),
  19.     -> ('a007','coderas',30),
  20.     -> ('a008','camisetas',45),
  21.     -> ('a009','pantalones',55),
  22.     -> ('a010','gorras',20),
  23.     -> ('a012','botas',NULL);
  24. Query OK, 11 rows affected (0.03 sec)
  25. Records: 11  Duplicates: 0  Warnings: 0
  26.  
  27. mysql>
  28. mysql> delimiter $$
  29. mysql>
  30. mysql> DROP PROCEDURE IF EXISTS  sele_articulo$$
  31. Query OK, 0 rows affected (0.00 sec)
  32.  
  33. mysql>
  34. mysql> CREATE PROCEDURE sele_articulo()
  35.     -> BEGIN
  36.     -> SELECT nombre FROM temporal WHERE precio=
  37.     -> (SELECT MAX(precio) FROM temporal )
  38.     ->
  39.     -> INTO @variable
  40.     -> ;
  41.     ->
  42.     -> END $$
  43. Query OK, 0 rows affected (0.00 sec)
  44.  
  45. mysql> delimiter ;

Luego lo llamamos:

Código MySQL:
Ver original
  1. mysql> CALL sele_articulo();
  2. Query OK, 1 row affected (0.02 sec)

y después consultamos la variable de MySQL usada:

Código MySQL:
Ver original
  1. mysql> SELECT @variable MaximoPrecio;
  2. +--------------+
  3. | MaximoPrecio |
  4. +--------------+
  5. | patines      |
  6. +--------------+
  7. 1 row in set (0.00 sec)

Posdata: Como verás, estoy usando el mismo ejemplo de datos que usaste TU al postear el ejercicio el [url]http://www.lawebdelprogramador.com/foros/MySQL/1548243-comprueba-e-imprime.html[/url]

Este nuevo ejercicio también lo consultaste alli.
Exacto he posteado en varios foros , ya que en el foro del instituto tardan mucho en contestar , como digo y creo es algo obligatorio en forosdelweb el no venir a que te lo hagan si no con tu trabajo ya hecho , y mi intención es saber si fallo o no y en caso de hacerlo , el sitio donde fallo , Libra lleva razón y yo lo he pensado de hacerlo con un count , pero no es la idea , pero lo del max no lo había pensado , gracias por las respuestas