我想根据年份间隔来分离我的电影网站上表格中的内容,但无论我如何努力,我都无法成功。
实际上,我想要的是在 1950
之前列出电影文件。
我不知道我是否犯了语法错误,因为我是初学者
A Movie 1910 B Movie 1920 C Movie 1930 D Movie 1940 E Movie 1950 F Movie 1970 G Movie 1990 SELECT * FROM streams WHERE type='movie' AND filename REGEXP '/^(190[1-9]\d|194\d)$/';
年份位于文件名的末尾,而不是开头,因此您需要删除
^
锚点。19
之后有一个额外的0
,因此您匹配的是以190
开头的 5 位数年份,而不是 4 位数以19
开头的年份。不要在 SQL 中的正则表达式周围放置
/
分隔符。如果您使用 MySQL 5.x 而不是 8.x,它不支持像
\d
这样的转义序列。将其替换为[0-9]
以匹配数字。