记一次mysql查询or、and并用查询

	
	SELECT
	customer_id AS 客户id,
	customer_name AS 客户名称,
	d.`name` AS 线路,
	customer_phone AS 客户电话,
	customer_address AS 客户地址,
	sale_name AS 业务员名称,
	deliver_time AS 配送时间,
	COUNT( DISTINCT DATE_FORMAT( o.createtime, "%y-%m-%d" ) ) AS 下单次数,
	SUM( o.pick_amount ) AS 下单金额 
FROM
	order_list o
	JOIN efarm.dictionary d ON o.customer_path = d.`value` 
WHERE
	 createtime BETWEEN '2018-12-31' 
	AND '2019-01-31' 
	AND `status` != 5 
	AND d.`code` = 'businessPath' 
	AND
		customer_name LIKE "%缘火锅%" 
		OR customer_name LIKE "%银座%" 
	
GROUP BY
	o.customer_id 
ORDER BY
	o.customer_path

银座佳驿*** 线路B6下单次数22
银座佳驿** 线路B6下单次数168
*尚缘火锅 线路盖家沟–B下单次数168

线路很明显不对,数据库没有B6这线
做法:OR的两边应该用()括起来和AND并列


	SELECT
	customer_id AS 客户id,
	customer_name AS 客户名称,
	d.`name` AS 线路,
	customer_phone AS 客户电话,
	customer_address AS 客户地址,
	sale_name AS 业务员名称,
	deliver_time AS 配送时间,
	COUNT( DISTINCT DATE_FORMAT( o.createtime, "%y-%m-%d" ) ) AS 下单次数,
	SUM( o.pick_amount ) AS 下单金额 
FROM
	order_list o
	JOIN efarm.dictionary d ON o.customer_path = d.`value` 
WHERE
	 createtime BETWEEN '2018-12-31' 
	AND '2019-01-31' 
	AND `status` != 5 
	AND d.`code` = 'businessPath' 
	AND
		(customer_name LIKE "%缘火锅%" 
		OR customer_name LIKE "%银座%" )
	
GROUP BY
	o.customer_id 
ORDER BY
	o.customer_path


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值