Đối với lựa chọn đệ quy, chúng ta hãy xem một ví dụ. Đầu tiên, chúng ta sẽ tạo một bảng. Lệnh CREATE được sử dụng để tạo bảng.
mysql> CREATE table tblSelectDemo - > ( - > id int, - > name varchar(100) - > ); Query OK, 0 rows affected (0.61 sec)
Bây giờ, chúng ta sẽ chèn các bản ghi vào bảng “tblSelectDemo”.
mysql> insert into tblSelectDemo values(1,'John'); Query OK, 1 row affected (0.10 sec) mysql> insert into tblSelectDemo values(2,'Carol'); Query OK, 1 row affected (0.09 sec) mysql> insert into tblSelectDemo values(3,'Smith'); Query OK, 1 row affected (0.17 sec) mysql> insert into tblSelectDemo values(4,'David'); Query OK, 1 row affected (0.15 sec) mysql> insert into tblSelectDemo values(5,'Bob'); Query OK, 1 row affected (0.18 sec)
Để hiển thị tất cả các bản ghi.
mysql> SELECT *from tblSelectDemo;
Đây là kết quả đầu ra.
+------+-------+ | id | name | +------+-------+ | 1 | John | | 2 | Carol | | 3 | Smith | | 4 | David | | 5 | Bob | +------+-------+ 6 rows in set (0.00 sec)
Sau đây là cú pháp cho SELECT đệ quy.
mysql> SELECT var1.id as id, @sessionName:= var1.Name as NameofStudent - > from (select * from tblSelectDemo order by id desc) var1 - > join - > (select @sessionName:= 4)tmp - > where var1.id = @sessionName;
Đây là kết quả đầu ra.
+------+----------------+ | id | NameofStudent | +------+----------------+ | 4 | David | +------+----------------+ 1 row in set (0.00 sec)