select Fmerchant_id,Fuin FROM t_order WHERE Forder_id=’27000022016041412037866’;
select Fmerchant_id,Forder_id FROM t_order WHERE Fuin=’42176034’ AND Fstate=1;
select Fmerchant_id,Fuin,Fstate FROM t_order WHERE Forder_id LIKE ‘%20160414%’;
select Fmerchant_id,Famount FROM t_order WHERE Forder_id=’27000022016041412037866’ OR Fuin=’42176034’;
复合索引是由多个列组成的索引,对于索引的效率,查询条件的列顺序非常重要。在这里,复合索引包含了Fuin、Fstate、Fcreate_time这三个列。
让我们分析每个查询选项:
A. 查询条件只涉及Forder_id列,没有使用索引中的其他列,所以这个查询不会充分利用复合索引。
B. 查询条件涉及Fuin和Fstate列,这两列包含在索引中,但查询没有涉及索引中的Fcreate_time列。这个查询可以充分利用索引。
C. 查询条件涉及Forder_id列,但是使用了LIKE操作符来进行模糊匹配,通常这种情况下索引的效率会下降,因为不是直接精确匹配。
D. 查询条件涉及Forder_id和Fuin列,但使用了OR操作符,这也可能导致索引的效率下降。