2016-08-02 11 views
0

Ich versuche, Spaltennamen einzeln in MySQL anzuzeigen, aber das Problem besteht darin, dass sie in alphabetischer Reihenfolge angezeigt werden. Die Syntax Ich verwende ist:Spaltennamen in ihrer ursprünglichen Reihenfolge anzeigen?

select column_name from information_schema.columns where table_schema = 
'customer_info' and table_name='customer_contact' order by column_name LIMIT 1 OFFSET 0; 

In der customer_contact Tabelle gibt es drei Säulen, die cust_id, cust_cell_num und cust_email sind. Wenn ich die obige Syntax verwende, wird cust_cell_num anstelle von cust_id angezeigt.

Beim Ändern der Syntax auf die folgenden:

select column_name from information_schema.columns where table_schema = 
    'customer_info' and table_name='customer_contact' order by column_name LIMIT 3 OFFSET 0; 

Es zeigt die Spaltennamen in der folgenden Reihenfolge: cust_cell_number, cust_email, cust_id.

Wie kann ich erreichen, dass sie in der Reihenfolge angezeigt werden, in der sie tatsächlich in der Datenbank angezeigt werden: cust_id, cust_email, cust_cell_num?

Antwort

4

Try this:

select column_name 
from information_schema.columns 
where table_schema = 'customer_info' 
and table_name = 'customer_contact' 
order by ordinal_position 
limit 3 offset 0; 

Siehe offizielle Handbuch hier The INFORMATION_SCHEMA COLUMNS Table

+0

Danke, das hat funktioniert! : D – Osiris93