现在我的MySQL数据库中存的是一些招聘信息,表名"info",有“name”、“company”,"city","time"等等属性。其中name是指岗位名,例如“招兼职手工限女性(可带回家制作)”,我现在想查询所有name域中包含“兼职”的所有结果,请问SQL语句如何写啊?我写的是"select*from `info` where preg_match(/$type/,`name`)";后面那个preg_match函数是我在网上找的,貌似是一种正则表达式匹配,$type是“兼职”,但是结果显示有错误。情哪位大侠给点指点啊
     不管是用子串匹配还是正则表达式,都可以,多谢各位

解决方案 »

  1.   

    select * from `info` where name like '%兼职%'注意编码
      

  2.   

    楼上两位是正解分析一下你的错误select*from `info` where preg_match('/'.$type.'/',`name`)注意字符之间的连接引号和点号要说的是把字段名放入preg_match函数中操作,根本不可能实现的。
      

  3.   

    不建议在SQL语句中使用preg_match这样的正则匹配,因为文件有可能会比较长,可以使用SQL中的like进行匹配操作,关键字最好大写:
    SELECT * FROM info WHERE name LIKE '%兼职%'