自己写:把算式从列这边挪走
下面这条查询给列套了一层算式。把 TODO 改写成索引用得上的写法,打出改写后判了多少次。⚠️ 结果必须还是原来那些行。 两张表 goods 400 行 id 主键|sup_id 1~20|cat 只有 A/B/C|price = i
自己写:把开头匹配改成取一段
把下面的 TODO 改写成用范围表示"以 g1 开头"的写法,打出改写后判了多少次。 两张表 goods 400 行 id 主键|sup_id 1~20|cat 只有 A/B/C|price = i*7%500|n
自己写:先确认结果没变,再看省了多少
把下面的 TODO 补完,打出两种写法的结果一不一致和各判了多少次(三段,用 / 隔开)。 两张表 goods 400 行 id 主键|sup_id 1~20|cat 只有 A/B/C|price = i*7%500|name &qu
自己写:把一次完整的改写交出来
把下面的 TODO 补完,打出原写法的取数方式、新写法的取数方式、原写法判了几次、新写法判了几次、结果一不一致(五段,用 / 隔开)。 ⚠️ 没写 ORDER BY 的时候,行的顺序本来就不保证——走法一换,同一批行出来的先后就可能不一样。
两张表连接时,谁先走更划算
一张大表和一张小表做连接。一般来说,让【0】更划算。
被找的那张表该有什么
连接时,被驱动的那张表上最该有的是【0】。
⚠️ 一份索引,把驱动表换了个个儿
下面这段打出没索引时和给连接列建了索引之后,这条连接各把条件判了多少次(用 / 隔开)。 两张表 goods 400 行 id 主键|sup_id 1~20|cat 只有 A/B/C|price = i*7%500|name &quo
⚠️ 400 → 20 → 5,结果一直是 100 行
下面这段打出三种情况下各判了多少次和结果有多少行(四段,用 / 隔开)。 两张表 goods 400 行 id 主键|sup_id 1~20|cat 只有 A/B/C|price = i*7%500|name "g1&quo
自己写:看清这条连接谁先走
把下面的 TODO 补完,打出这条连接的计划一共有几行。 两张表 goods 400 行 id 主键|sup_id 1~20|cat 只有 A/B/C|price = i*7%500|name "g1"~"
自己写:给连接列补一份索引
把下面的 TODO 补完:给连接用的那一列建一份索引,然后打出建完之后判了多少次。 两张表 goods 400 行 id 主键|sup_id 1~20|cat 只有 A/B/C|price = i*7%500|name "g