Menu
CoddyTech

INSTR

本课属于 Coddy SQL 学习旅程的“进阶内容”单元。第 8 课,共 27 课。

INSTR(haystack, needle) 返回 needle 在 haystack 中从 1 开始计数的位置,如果不存在,则返回 0。

INSTR('alice@example.com', '@')   -- 6
INSTR('hello', 'z')               -- 0

与 SUBSTR 结合使用,就是按分隔符拆分字符串的方法。要提取电子邮件中 @ 前面的部分:

SUBSTR(email, 1, INSTR(email, '@') - 1)

你的意思是:从位置 1 开始,取出电子邮件中位于 @ 之前的所有字符。

challenge icon

挑战

简单

可用的表和列:

  • signups:id,email

返回每封电子邮件的 id 和域名(@ 后面的所有内容),并将域名命名为 domain。假设每封电子邮件都恰好包含一个 @。按 id 排序。

亲手试试

SELECT id,
       -- '@' 后面的所有内容
FROM signups
ORDER BY id
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

进阶内容中的所有课

自己练习: SQL 在线编辑器