如何 select char_length of (select ...) in mysql
How to select char_length of (select ...) in mysql
我必须 select 字符串的字符长度,我可以通过另一个 select.
SELECT DISTINCT(TABLE_SCHEMA) FROM INFORMATION_SCHEMA.TABLES LIMIT 0, 1
returns
TABLE_SCHEMA
mysql
现在我想得到 char_length 这个 mysql
并在一个查询中完成。
这些查询
SELECT CHAR_LENGTH(SELECT DISTINCT(TABLE_SCHEMA) FROM INFORMATION_SCHEMA.TABLES LIMIT 0, 1)
SELECT CHAR_LENGTH(DISTINCT(TABLE_SCHEMA) FROM INFORMATION_SCHEMA.TABLES LIMIT 0, 1)
return语法错误。
那么如何创建查询?
首先:如果您只是查找数据库列表,您希望使用 information_schema.schemata
而不是 information_schema.tables
。这避免了使用 DISTINCT
的需要,然后你可以简单地做:
SELECT schema_name, CHAR_LENGTH(schema_name) schema_name_length
FROM information_schema.schemata
LIMIT 0, 1
注意:没有 ORDER BY
子句的 LIMIT
不是好的做法。您无法预测哪些记录会先出现。
如果出于某种原因您确实想坚持使用当前查询,那么您需要将其转换为子查询,如下所示:
SELECT TABLE_SCHEMA, CHAR_LENGTH(TABLE_SCHEMA) TABLE_SCHEMA_LENGTH
FROM (
SELECT DISTINCT(TABLE_SCHEMA) FROM INFORMATION_SCHEMA.TABLES LIMIT 0, 1
) x
我必须 select 字符串的字符长度,我可以通过另一个 select.
SELECT DISTINCT(TABLE_SCHEMA) FROM INFORMATION_SCHEMA.TABLES LIMIT 0, 1
returns
TABLE_SCHEMA
mysql
现在我想得到 char_length 这个 mysql
并在一个查询中完成。
这些查询
SELECT CHAR_LENGTH(SELECT DISTINCT(TABLE_SCHEMA) FROM INFORMATION_SCHEMA.TABLES LIMIT 0, 1)
SELECT CHAR_LENGTH(DISTINCT(TABLE_SCHEMA) FROM INFORMATION_SCHEMA.TABLES LIMIT 0, 1)
return语法错误。
那么如何创建查询?
首先:如果您只是查找数据库列表,您希望使用 information_schema.schemata
而不是 information_schema.tables
。这避免了使用 DISTINCT
的需要,然后你可以简单地做:
SELECT schema_name, CHAR_LENGTH(schema_name) schema_name_length
FROM information_schema.schemata
LIMIT 0, 1
注意:没有 ORDER BY
子句的 LIMIT
不是好的做法。您无法预测哪些记录会先出现。
如果出于某种原因您确实想坚持使用当前查询,那么您需要将其转换为子查询,如下所示:
SELECT TABLE_SCHEMA, CHAR_LENGTH(TABLE_SCHEMA) TABLE_SCHEMA_LENGTH
FROM (
SELECT DISTINCT(TABLE_SCHEMA) FROM INFORMATION_SCHEMA.TABLES LIMIT 0, 1
) x