1.为了快速统计出支付宝的支付方式是否存在漏洞,对支付宝订单的回调建表存储
2.有以下三个表
select notify_id,out_trade_no,trade_no,COUNT(*),notify_time FROM alipay_callback WHERE trade_status = 'TRADE_SUCCESS' GROUP BY notify_id HAVING COUNT(*) > 1 ORDER BY notify_time
select notify_id,out_trade_no,trade_no,COUNT(*),notify_time FROM alipay_callback WHERE trade_status = 'TRADE_SUCCESS' GROUP BY out_trade_no HAVING COUNT(*) > 1 ORDER BY notify_time
select notify_id,out_trade_no,trade_no,COUNT(*),notify_time FROM alipay_callback WHERE trade_status = 'TRADE_SUCCESS' GROUP BY trade_no HAVING COUNT(*) > 1 ORDER BY notify_time
3.当上述三个表一致时视为数据正常,如何快速比较三个表,并且找出不一致的数据?
제 개인적인 제안은 애플리케이션에 그렇게 하는 것입니다. SQL에 라인이 몇 개 밖에 없고 프로그램에 라인이 수십 개 있더라도 SQL에 매우 복잡한 논리를 넣지 마세요. SQL은 저장과 쿼리를 위한 곳이고, 프로그램은 로직이 이루어지는 곳입니다. 구현이 쉽고, 유지 관리가 쉽고, 확장이 쉽고, 미래 세대가 이해하기 쉽습니다.
이 작업을 앱을 사용하면 문제가 없을 것이라고 믿습니다. 데이터가 큰 경우에는 inform_time에 따라 일괄적으로 수행