可以使用以下SQL查询:

SELECT COUNT(DISTINCT c.customer_id)
FROM customer c
LEFT JOIN order o ON c.order_id = o.order_id
WHERE o.payment_method = '1'
AND c.customer_id NOT IN (
  SELECT DISTINCT c.customer_id
  FROM customer c
  INNER JOIN order o ON c.order_id = o.order_id
  WHERE o.payment_method = '2'
)

这个查询使用了子查询来查询使用了支付方式“2”的用户ID,然后在外部查询中筛选出只使用了支付方式“1”而没有使用支付方式“2”的用户数量。

我有两张数据库表一张costumer包含用户ID和订单ID这两个字段是一对多的关系。一张order包含订单ID和支付方式这两个字段是一对一的关系。要怎么用SQL查询有多少用户只使用了支付方式1而没有使用支付方式2

原文地址: https://www.cveoy.top/t/topic/bFU5 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录