1

文档没有提到 ORDER BY 并且我没有运气来表达这个查询:

SHOW FIELDS FROM `TB_Main`  WHERE Type = 'mediumtext' OR Type = 'bit(1)' ORDER BY Field;

我必须在我的脚本中进行排序吗?

4

1 回答 1

1

您可以直接查询信息架构表。正如手册所说

以下语句几乎是等价的:

SELECT COLUMN_NAME, DATA_TYPE, IS_NULLABLE, COLUMN_DEFAULT
  FROM INFORMATION_SCHEMA.COLUMNS
  WHERE table_name = 'tbl_name'
  [AND table_schema = 'db_name']
  [AND column_name LIKE 'wild']

SHOW COLUMNS
  FROM tbl_name
  [FROM db_name]
  [LIKE 'wild']

您可以将ORDER BY子句应用于第一种类型的语句,因为它是一个普通SELECT命令。

因此,代替您的SHOW命令,您可以执行以下操作:

SELECT COLUMN_NAME, DATA_TYPE, IS_NULLABLE, COLUMN_DEFAULT
FROM INFORMATION_SCHEMA.COLUMNS
WHERE
      TABLE_NAME = 'TB_Main'
  AND COLUMN_TYPE IN ('mediumtext', 'bit(1)')
ORDER BY COLUMN_NAME;
于 2012-04-26T23:03:43.123 回答