Dit is een enigszins ingewikkeld iets om te doen. En je kunt het echt niet in één stap doen. Ik zal je iets geven om mee te beginnen, en je zult het vanaf daar moeten nemen:
select CONCAT("SELECT * FROM ", TABLE_NAME, " WHERE user_id=1;") FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME="user_id";
Dit levert nu de volgende uitvoer op:
+--------------------------------------------------------------------+
| CONCAT("SELECT * FROM ", TABLE_NAME, " WHERE user_id=1;") |
+--------------------------------------------------------------------+
| SELECT * FROM table0 WHERE user_id=1; |
| SELECT * FROM table1 WHERE user_id=1; |
Nu wil je je omdraaien en al die commando's uitvoeren... dus doe het als volgt:
select CONCAT("SELECT * FROM ", TABLE_NAME, " WHERE user_id=1;") FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME="user_id" INTO OUTFILE "some_file_path_and_name";
Dat geeft je een tekstbestand vol met alle commando's die je zoekt.
Bijwerken---
Ik heb de "Voor elk kolombit.." gemist.
select CONCAT("SELECT * FROM ", TABLE_NAME, " WHERE ", COLUMN_NAME, "='WHATEVER';") FROM INFORMATION_SCHEMA.COLUMNS WHERE COLLATION_NAME IS NOT NULL INTO OUTFILE 'somepath';
Hier gebruiken we het feit dat u zei dat u op zoek bent naar een tekenreeks, en dat alle velden van het tekenreekstype een sorteernaam hebben. Vervang WHATEVER door wat u zoekt.