English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Para el ejemplo de selección recursiva, veamos un caso. Primero, crearemos una tabla. La orden CREATE se utiliza para crear tablas.
mysql> CREATE table tblSelectDemo - > ( - > id int, - > nombre varchar(100) - > );
Ahora, insertaremos registros en la tabla 'tblSelectDemo'.
mysql> insert into tblSelectDemo values(1,'John'); mysql> insert into tblSelectDemo values(2,'Carol'); mysql> insert into tblSelectDemo values(3,'Smith'); mysql> insert into tblSelectDemo values(4,'David'); mysql> insert into tblSelectDemo values(5,'Bob');
Mostrar todos los registros.
mysql> SELECT *from tblSelectDemo;
Esto es la salida.
+------+-------+ | id | nombre | +------+-------+ | 1 | John | | 2 | Carol | | 3 | Smith | | 4 | David | | 5 | Bob | +------+-------+ 6 filas en conjunto (0.00 sec)
Aquí está la sintaxis del SELECT recursivo.
mysql> SELECT var1.id as id, @sessionName := var1.Name as NombreDelEstudiante - > from (select * from tblSelectDemo order by id desc) var1 - > join - > select @sessionName := 4)tmp - > where var1.id = @sessionName;
Esto es la salida.
+------+----------------+ | id | Nombre del Estudiante | +------+----------------+ | 4 | David | +------+----------------+ 1 row in set (0.00 sec)