我想做一个mysql选择,但我需要选择两种类型的数据,一种是从0256开始,另一种是0356.我可以使用:
SELECT * FROM table WHERE tel LIKE '0256%' AND '0356%'
?
感谢, 塞巴斯蒂安
修改
我在PHP中遇到这些查询的问题。
上面的查询,在mysql中工作正常,但在PHP中我只得到LIKE '0256%'
答案 0 :(得分:11)
您可能正在寻找这样的查询:
SELECT * /* Select all columns */
FROM table /* from the table named 'table' */
WHERE tel LIKE '0256%' /* where the field 'tel' starts with '0256' */
OR tel LIKE '0356%' /* or where the field 'tel' start with '0356' */
答案 1 :(得分:4)
使用AND代替OR时遇到2个问题,而在第二个参数
之前没有LIKESELECT * FROM table WHERE tel LIKE '0256%' OR tel LIKE '0356%'
答案 2 :(得分:0)
您也可以使用REGEX:
SELECT *
FROM table
WHERE tel RLIKE '0[23]56.*'
随着更多数字选项的增加(假设他们愿意),这可能会使事情更清晰。它也可能使查询更快,但必须执行分析以查看实际情况是否如此。