2011-05-31 13 views
7

¿Se supone que esto no funciona en MySQL?Mostrar el estado de la tabla en una subconsulta?

select * from (show table status like '%fubar%') as t1; 

o incluso

select name, rows from (show table status like '%fubar%') as t1 where rows>0; 

Este es el error que estoy recibiendo:

ERROR 1064 (42000): Usted tiene un error en su sintaxis SQL; compruebe el manual que corresponde a su versión del servidor MySQL para el sintaxis derecho al uso 'Mostrar estado de mesa como 'cerca% fubar%') como t1' en la línea 1

Puede show table foo like '%something%' o show tables like '%something%' no se pueden utilizar en una subconsulta ¿De este modo? ¿De qué otra manera podría seleccionar de todas las tablas que coincidan con un determinado patrón?

Respuesta

8
SELECT table_name as name, table_rows as rows FROM information_schema.tables as t1 
WHERE table_rows > 0 

Aquí hay una forma alternativa de recuperar la información que está buscando.

+0

Gracias, eso funciona. – Morterwald

Cuestiones relacionadas