2016-07-13 20 views
-1

Ich möchte das Ergebnis Desc für nur bestimmte Spalten jeder Tabelle im Informationsschema, sagen wir Primärschlüssel.Desc Primärschlüssel aller Tabellen in MYSQL

Kann dies getan werden?

Ich habe versucht, Dinge wie

SELECT * FROM (DESC TABLENAME) WHERE ....; 

aber es hat nicht funktioniert.

Auch ich möchte, dass dies für alle Tabellen funktioniert.

+0

Bitte geben Sie die erwartete Ausgabe an. – sagi

+0

Was meinen Sie mit DESC? –

+0

Müssen Sie rückwärts sortieren (absteigend)? 'SELECT * FROM Tabelle WHERE ... ORDER BY ID DESC' – newage

Antwort

2

DESC aka DESCRIBE alias SHOW COLUMNS wird in einer Unterabfrage nicht funktionieren. Aber SELECT wird. Sie können beispielsweise ersetzen

SHOW COLUMNS FROM t IN test LIKE '%2'; 

mit

SELECT column_name AS `Field`, column_type AS `Type`, 
is_nullable AS `Null`, 
column_key as 'Key', 
column_default AS `Default`, extra AS `Extra` 
FROM information_schema.columns 
WHERE table_schema = 'test' 
AND table_name = 't' 
AND column_name like '%2'; 

und Sie werden die gleiche Sache zu bekommen.