mysql 常用函数和关键字

一、无则插入,有则更新on duplicate key update

  

insert into playerItem(play_id,item_id,item_count,update_time) values(2013,23,21,133342422) on duplicate key update 

item_count = item_count+1,update_time = 184748348438;

 

二、判断是否存在表名或字段

  

SELECT 
    table_name
FROM
    information_schema.TABLES
WHERE
    table_name = 'AdminBonus';


SELECT 
    COLUMN_NAME 
FROM
    INFORMATION_SCHEMA.COLUMNS
WHERE
    table_name = 'AdminBonus' AND column_name = 'player_id'

 

三、模糊搜索like

   

SELECT * from Player WHERE sns_id like 'yemanrentest%'  //SQL 使用单引号来环绕文本值(大部分数据库系统也接受双引号)。如果是数值,请不要使用引号

  关于通配符:

    %:代替一个或多个

    _ : 代替一个

    [abc]: 表示字符列中的任何单一字符

    [!abc] or [^abc]:不在字符列中的任何单一字符

SELECT * FROM Persons
WHERE FirstName LIKE '_eorge' //第一个字符任意,后面是eorge结束的

SELECT * FROM Persons
WHERE LastName LIKE 'C_r_er'

SELECT * FROM Persons
WHERE City LIKE '[!ALN]%' // 不以A或L或N开头的

 

四、extract 提取日期的部分内容

 

五、distinct 搜索去重复的

SELECT count( DISTINCT (
depart_id
) ) AS num
FROM `books`     

 

六、between and  相反 not and  //不同版本,是否包含最前和最后两个,都不一样,使用时需谨慎

between and

SELECT * FROM Persons
WHERE LastName
BETWEEN 'Adams' AND 'Carter'

如需使用上面的例子显示范围之外的人,请使用 not between and

SELECT * FROM Persons
WHERE LastName
NOT BETWEEN 'Adams' AND 'Carter'

 

 

七、and 和 or 和 limit

SELECT * from books 
    where (press = '机械工业出版社' or depart_id = 4) 
        and status = 1 limit 2,5  //limit 表示从结果集第二个开始,5个值

 

八、order by

SELECT * from books 
    where press = '机械工业出版社' 
   order by update_time desc // asc

 

九、insert into  / update

UPDATE books 
    SET depart_id =3,STATUS =0 
   WHERE id =3

 

十、top 在 mysql某些版本不支持,可以用limit取代之

 

十一、in :允许我们在 WHERE 子句中规定多个值。

SELECT *  from books 
    where 
        press in('化学工业出版社','电子工业出版社','机械工业出版社') 
        order by id asc

 

 

 

相关链接:

  http://www.w3school.com.cn/sql/sql_wildcards.asp  //很棒

 

转载于:https://www.cnblogs.com/zhongyuan/p/4374638.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值