mysql学习

1、match ... against对英文的全文搜索数据库、匹配查找
参考:http://blog.csdn.net/manbujingxin/article/details/6656992
match(要匹配的字段名) against("关键词" IN BOOLEAN MODE)按照什么模式进行匹配查询。
(1)布尔查找:IN BOOLEAN MODE,表示不会过滤掉全文中出现次数频繁机率50%以上的词,
 (2)、自然语言查找:默认的全文搜索方式,不用加IN或者加IN NATURAL LANGUAGE MODE。此种查找会忽略掉频繁出现的and/or/to等停词,也会过滤掉布尔查找中的那个,不会考虑局部匹配、只考虑独立单词,返回结果按相关度由高到低排序。


2、limit 0,10 ;从第一条开始取10条。
   limit 10 等价于 limit 0,10;


3、sql ... where id<>$id,当求id不等于参数的的数据记录时不能让参数为空,可以默认为0


4、"select d.*,c.create_time as add_time ,c.id as cid from phpbuy_deal_collect as c left join phpbuy_deal as d on d.id = c.deal_id where c.user_id = ".$user_id." order by c.create_time desc limit ".$limit;能看懂么?limit表示分页,如2,10取第三条起的10条数据。


5、select distinct(name) from user;从User表中取出name值不重的所有name值。
   比如name={'豆油','菜油','猪肉','菜油',‘豆油’}
   取出的值就为name={'豆油','菜油','猪肉'}
   //distinct name ==  distinct(name)
   //distinct(id,name)会按照id+name的形式过滤掉重复的。

   //sqlser也支持count(distinct(id,name)),access不支持多个查询。

6、phpmyadmin修改密码可为空

    依次打开:安装目录/libraries/config.default.php,修改

      $cfg['Servers'][$i]['nopassword'] = true;
      $cfg['Servers'][$i]['AllowNoPassword'] = true;
      $cfg['Servers'][$i]['password'] = '';

7、insert插入时,values和value效果一样。

8、mysql批量执行,如果在mysql命令行下,可以直接使用mysqldump、source等工具执行,如果是php,可以用pdo、mysqli等,但是都需要php支持(加扩展)才行,而且批量执行的结果不准确,只看第一条数据的成功与否,如果使用mysqli的multi_query方法来批量执行,那么可以用




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章