Предварителна бележка:Това не е моят отговор. Намерих го на http://lists.mysql.com/mysql/202610 и са копирали и поставили за простота кредит на Стивън Кук
Можете да използвате изгледа INFORMATION_SCHEMA.TABLES, за да генерирате GRANT изразите вместо вас. Напишете заявка в следните редове:
SELECT CONCAT('GRANT SELECT ON test.', TABLE_NAME, ' to ''foouser'';')
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'test'
AND TABLE_NAME LIKE 'foo_%'
След това го стартирайте, копирайте резултатите и изпълнете тези резултати като заявка или скрипт. Разбира се, можете да се побъркате колкото искате с това, например, ако направите това за много потребители, може би напишете съхранена процедура, която приема параметър за потребителското име и следователно може да се използва като инструмент, когато имате нужда от него.
Това не е синтаксис, който сте поискали, но е хубав трик, който работи.
--
Заменете схемата на таблицата 'test' с името на вашата база данни. foo_% може да бъде заменен с подходящия префикс_%
Опитах това сам и се получи страхотно.