MySQL

  1. 创建/删除数据库/表: create/drop database/table if (not) exists dbname;
  2. 展示数据库/表:show databases/tables;
  3. 使用数据库:use dbname;
  4. 选中数据表:select col1,col2 from tbname where col1='' AND col2='';
  5. 删除表某个内容:delete from tbname where col1='' AND col2='';//会将选中的整行内容删除
  6. PHP中选中某几个字段:
     1 <?php
     2       $dbc=msqli_connect('localhost','user','password','dbname');
     3       $query="select name,gender from student";
     4       $result=mysqli_query($dbc,$query);
     5       //$result保存的是一个mysql资源的ID号
     6       while($row=mysqli_fetch_array($result)) {
     7       //mysqli_fetch_array()一次获取一行,数据以数组形式返回。每执行一次指针指向下一行数据,无数据mysqli_fetch_array()返回false
     8            echo $row['name'];
     9            echo $row['gender'];
    10       }
    11       mysqli_close($dbc);
    12 ?>    

     

  7.  增加/删除/更改字段: alter table tbname add/drop column col1 col1Type default 'nihao'; || alter table tbname change/modify column name Newname type

  8. alter table student change column gender varchar(20);
    //change用于修改字段名或者字段类型或者两者同时修改,但即使不修改类型也必须在语句末尾指定字段类型
    alter table student modify column gender varchar(20) after name;
    //modify用于修改字段类型或者位置,只有参数after,同样即使不修改字段类型也必须指定
    alter table student drop column gender;
    //删除gender字段
    alter table student add column id int not null auto_increment,add primary key(id);
    //非空自增主键,主键的值不会改变,即使删除了也不会保留相应主键值

     

  9. select now();//显示完整日期时间 select curdate();//显示完整日期  select curtime();//显示完整时间  

  10. 更新: update tbname set col1='' where name='';
  11. 查询: select * from tb_name where col1 is not null order by col2 desc limit 4;//选择col1列非空且按照col2列顺序排列,总数只选择4个。
  12. 内联:select mismatch_topic.topic_id,mismatch_category.name from mismatch_topic inner join mismatch_category on (mismatch_topic.category_id=mismatch_category.category_id) 后面还可以加where子句;
  13. 上述绿色部分可以用using替代,意思是using后的字段数据在两个表中相等,有个限制就是两个字段名必须在两个表中相同
    1 select mismatch_topic.topic_id,mismatch_category.name from mismatch_topic inner join mismatch_category using(category_id) where mismatch_topic.name='Movies';

     

  14. 使用别名(as):用as生成别名后相应生成 生成的表字段名也为别名
    1 select mc.name as topic_name,mt.name as category_name from mismatch_topic as mc inner join mismatch_category as mt using(category_id);

     

  15. 多次内联:本次查询最后字段为response_id,response,topic_name,category_name
    1 select ma.response_id,ma.response,mb.name as topic_name,mc.name as category_name from mismatch_response as ma inner join mismatch_topic as mb using(topic_id) inner join mismatch_category as mc using(category_id) where use_id=$_SESSION['user_id'];

     

  16. like:不完全匹配。MySQL中默认不区分大小写
    select title from riskyjobs where title like '%jiba%';
    
    like查找与引号中的词具有匹配关系的记录,即一段话中包含jiba,%是通配符,如果没有后面的通配符,表示以jiba结尾

    select title from riskyjobs where title like '% jiba%';
    表示jiba前必须有个空格

    下划线也与like一起使用表示一个字符。
    select title from riskyjobs where title like '__jiba%';
    这里有两个下划线,表示jiba前有两个字符,即整个搜索记录中开头有两个字符然后jiba.
    
    

     

  17. limit:限制检索返回结果数量
    1 select*from mismatch_user limit 2,5;
    有两个参数,第一个参数是跳过检索结果中的几行,第二个参数是返回几行,如果剩余结果中数量小于第二个参数,则返回剩余结果。第一个参数可省略

     

posted @ 2017-03-06 01:53  gouji  阅读(184)  评论(0)    收藏  举报