【发布时间】:2018-02-19 09:36:29
【问题描述】:
e.g. "Food" column is enum type
我能数一下“food”列有多少个索引吗?
我用过
SELECT COUNT(food) FROM table WHERE code=1
但它不起作用。
【问题讨论】:
-
这不是同一个问题
e.g. "Food" column is enum type
我能数一下“food”列有多少个索引吗?
我用过
SELECT COUNT(food) FROM table WHERE code=1
但它不起作用。
【问题讨论】:
首先你的数据库架构不好,这里说的是解决方案:
你可以数食物中逗号的个数加1:
SELECT LENGTH(food) - LENGTH(REPLACE(food, ',', '')) + 1
FROM table WHERE code=1
【讨论】:
SELECT COUNT(DISTINCT food)
FROM table
这将给出food 的使用 值的数量。如果你有一些未使用的值,那么你需要这样的东西:
SELECT table_name, column_name,
LENGTH(column_type) - LENGTH(REPLACE(column_type, ',', '')) + 1 AS items,
column_type
FROM information_schema.columns
WHERE table_schema = 'pics'
AND data_type = 'enum';
+-------------+-------------+-------+----------------------------------------------------------+
| table_name | column_name | items | column_type |
+-------------+-------------+-------+----------------------------------------------------------+
| collections | index_cat | 7 | enum('unk','wpc','family','trip','hike','music','other') |
| pics | skip | 2 | enum('','skip') |
| pics | prec | 5 | enum('unk','click','est','manual','adj') |
| picsav | prec | 4 | enum('unk','click','est','manual') |
| picsav2 | prec | 4 | enum('unk','click','est','manual') |
+-------------+-------------+-------+----------------------------------------------------------+
(对于您提出的具体问题而言,这太过分了。)
【讨论】: