MySQL常用方法

查询

Select prod_id, prod_price, prod_price*prod_quantity as cost
From products, customers
Where (prod_price bettween 10 and 20) and  (prod_id Not in(1001,1002)
Group by prod_id Desc
Having count(*) >= 2 //分组后,组的大小要大于等于2
Order by prod_id
Limit 10,2;  //限制显示10个,从第3个开始

插入

Insert Into customers( cust_id,
                       cust_address,
                       cust_country)
Values('peter'
       'main street'
       'USA');

删除

Delete From customer
Where cust_id in (1001,1002);

更改

Update customers
Set cust_email = 'email@fudd.com',
    cust_name = 'the fudds'
Where cust_ID = 1005;

注意: MySQL是大小写不分,这里我用首字母大写表示是关键字。

使用通配符进行过滤(不区分大小写)

Where prod_id Like '_ton anvil%'

使用正则表达式进行搜索 (默认不区分大小写)

Where prod_name RegExp '^\\([^0-9] sticks?\\)$'

Like 与 RegExp 的异同:

  • Like匹配整个串,而RegExp匹配子串
  • 利用定位符,通过使用^定位表达式开始位置,用$结束表达式,可以使RegExp的作用和Like一样
//设数据库中有prod_name 为jetPack 1000的数据
select prod_name
from products
where prod_name like '1000';//不返回数据jetPack 1000

select prod_name
from products
where prod_name RegExp '1000';//会返回数据jetPack 1000

Like匹配整个列值,如果被匹配的文本在列值中出现,Like将不会找到,相应的行也不会放回(除非使用通配符)
RegExp在列值内进行匹配,如果文本在列值中出现,RegExp会找到,相应的行会被放回。

Where 与 Group 的 Having 的区别

where字句都可以用having来代替
where只过滤行,而having过滤分组
having支持所有的where操作符, 但是关键字有所区别
where在分组前过滤, having在分组后过滤。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值