2013-09-05 68 views
-1

我有一个用于上传内容的SQL数据库列Mime types。此列包含以下形式的字符串值:SQL中的模式匹配

image/jpeg 
image/gif 
video/mpeg 
video/mp4 

是否有SQL查询,我可以在其中选择带有'图像'前缀的所有行?还是我必须硬编码每个值?

WHERE MIME_TYPE IN( '图像/ PNG', '图像/ GIF',...)

硬编码这些值将使得脚本很难当未来的MIME类型宣布维持。数据库已经过滤了输入,但添加了一个用于分组的新列不在我的手中。

+0

我删除了我的答案,因为我意识到它并没有真正解决的核心问题。但是如果你看看这个小提琴,http://sqlfiddle.com/#!2/1ab12/1,即使创建了合适的索引,你也会发现'LIKE'并不像连接那样优化。 –

回答

3

WHERE mime_type LIKE 'image%'

那样简单。 %充当通配符。

+0

完美。感谢你及时的答复 – Twifty