[英]How to index mysql table with custom field select
如何根據給定的查詢索引mysql表?
SELECT
IF(
flag IN ('A', 'B')
AND status IN ('on'),
'A',
flag
) AS customized_flag,
IF(
agent_group = 'A',
'group_1',
'group_2'
) AS group,
COUNT(*) AS total
FROM
mytable
WHERE type IN (1, 2, 3, 4, 5)
AND publish = 1
AND status IN ('on', 'deleted', 'expired',)
GROUP BY customized_flag,
agency_package_status ;
標志可以是A,B,C,D
agent_group可以是A,B,C,D
類型是任何整數
我的樣本表數據如下所示
改成
GROUP BY customized_flag, `group`
加
INDEX(publish, type, status)
查詢是有效的Questioner正在嘗試在此查詢customized_flag中的自定義字段上添加索引的方法,該索引不以表中的字段形式存在...但是在查詢中他創建該字段以獲取所需的結果...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.