我正在寻找等同于
DESCRIBE USERS;对于sql语句,例如:
SELECT id,name,md5(password) FROM USERS主要是因为我对返回哪些数据类型感兴趣。
我该怎么做呢?
发布于 2012-05-29 17:29:41
变通解决方案:
CREATE TEMPORARY TABLE temp SELECT id,name,md5(password) FROM USERS;
DESCRIBE temp;
DROP TEMPORARY TABLE temp;发布于 2012-05-29 17:27:58
这样如何:
select column_name,data_type, character_maximum_length, numeric_precision
from information_schema.columns
where table_name = 'USERS';发布于 2012-05-29 17:34:36
这
SELECT * FROM INFORMATION_SCHEMA.COLUMNS where TABLE_SCHEMA = 'schema' and TABLE_NAME = 'table'返回大量信息。
desc INFORMATION_SCHEMA.COLUMNS
+--------------------------+---------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------------------+---------------------+------+-----+---------+-------+
| TABLE_CATALOG | varchar(512) | YES | | NULL | |
| TABLE_SCHEMA | varchar(64) | NO | | | |
| TABLE_NAME | varchar(64) | NO | | | |
| COLUMN_NAME | varchar(64) | NO | | | |
| ORDINAL_POSITION | bigint(21) unsigned | NO | | 0 | |
| COLUMN_DEFAULT | longtext | YES | | NULL | |
| IS_NULLABLE | varchar(3) | NO | | | |
| DATA_TYPE | varchar(64) | NO | | | |
| CHARACTER_MAXIMUM_LENGTH | bigint(21) unsigned | YES | | NULL | |
| CHARACTER_OCTET_LENGTH | bigint(21) unsigned | YES | | NULL | |
| NUMERIC_PRECISION | bigint(21) unsigned | YES | | NULL | |
| NUMERIC_SCALE | bigint(21) unsigned | YES | | NULL | |
| CHARACTER_SET_NAME | varchar(32) | YES | | NULL | |
| COLLATION_NAME | varchar(32) | YES | | NULL | |
| COLUMN_TYPE | longtext | NO | | NULL | |
| COLUMN_KEY | varchar(3) | NO | | | |
| EXTRA | varchar(27) | NO | | | |
| PRIVILEGES | varchar(80) | NO | | | |
| COLUMN_COMMENT | varchar(255) | NO | | | |
+--------------------------+---------------------+------+-----+---------+-------+https://stackoverflow.com/questions/10796340
复制相似问题