phpMyAdmin
 sql >> Baza danych >  >> Database Tools >> phpMyAdmin

Zapytanie MySQL do wyszukiwania rekordu w pełnej bazie danych

To dość skomplikowana sprawa. I naprawdę nie da się tego zrobić w jednym kroku. Dam ci coś na początek i będziesz musiał to zrobić:

select CONCAT("SELECT * FROM ", TABLE_NAME, " WHERE user_id=1;") FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME="user_id";

Teraz wygeneruje to takie wyjście:

+--------------------------------------------------------------------+
| CONCAT("SELECT * FROM ", TABLE_NAME, " WHERE user_id=1;")          |
+--------------------------------------------------------------------+
| SELECT * FROM table0 WHERE user_id=1;                              |
| SELECT * FROM table1 WHERE user_id=1;                              |

Teraz chcesz się odwrócić i wykonać wszystkie te polecenia... więc zrób to tak:

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";

To da ci plik tekstowy pełen wszystkich poleceń, których szukasz.

Aktualizacja---

Brakowało mi „Dla dowolnego bitu kolumny.”

select CONCAT("SELECT * FROM ", TABLE_NAME, " WHERE ", COLUMN_NAME, "='WHATEVER';") FROM INFORMATION_SCHEMA.COLUMNS WHERE COLLATION_NAME IS NOT NULL INTO OUTFILE 'somepath';

Tutaj używamy faktu, że powiedziałeś, że szukasz ciągu, a wszystkie pola typu ciąg mają nazwę collation_name. Zamień WSZYSTKO na to, czego szukasz.




  1. DBeaver
  2.   
  3. phpMyAdmin
  4.   
  5. Navicat
  6.   
  7. SSMS
  8.   
  9. MySQL Workbench
  10.   
  11. SQLyog
  1. Hasło PhpMyAdmin

  2. jak sprawić, by phpMyAdmin poprawnie importował datetime z csv?

  3. phpmyadmin|Jak utworzyć wydarzenie, wykonaj 2 akcje

  4. Jak wyłączyć tryb ścisły w mysql za pomocą MAMP na Macu?

  5. Błąd krytyczny:przekroczono czas wykonania 30 sekund w phpMyAdmin