I would debate CitizenBane's claim that Batman never beat Superman in canon comics based on his own example in Superman/Batman #2. In his post, CB claims that: "Here Superman and Batman fight an alternate future version of Superman. I've included this because technically, it's still Superman vs Batman in canon content."
In the scans provided, Superman says "You know what I got sick of, Bruce? You kicking the **** out of me with your toys."
I feel that if we're going to include the fight to begin with, we have to accept evil Superman's word that Batman literally kicked the **** out of Superman. We may have never seen it on panel, but Superman admits that it happened and frequently enough for him to get tired of it happening. I say its an admission that in some canonical sense, Batman has beaten up Superman before with prep because that is why Bruce would have been using his toys. Just saying.