Q: MySQL Subtotal in Query I HAVE AMMENDED THE QUESTION TO HOPEFULLY MAKE MORE SENSE!
I have this query
SELECT Player.MembershipNo , Player.FirstName , Player.LastName
     , Venue.VenueName as Venue, Results.MemCard, Results.EarlyReg
     , Position.Points as Venue_Points, Results.Date
FROM Position , Player , Results , Venue 
WHERE Player.MembershipNo =Results.MembershipNo 
  AND Results.Position =Position.Position 
  AND Venue.VenueID =Results.VenueID 
  AND Results.Date BETWEEN '2014-07-01' AND '2014-09-30' 
ORDER BY MembershipNo, Venue

which returns these results:
+--------------+-----------+----------+-------------------+---------+----------+--------------+------------+
| MembershipNo | FirstName | LastName |       Venue       | MemCard | EarlyReg | Venue_Points |    Date    |
+--------------+-----------+----------+-------------------+---------+----------+--------------+------------+
|            0 | Bob       | Stevens  | The Dolphin       |       1 |        1 |           32 | 27/08/2014 |
|            0 | Bob       | Stevens  | The Enigma Tavern |       1 |        1 |           40 | 08/07/2014 |
|            0 | Bob       | Stevens  | The Enigma Tavern |       1 |        1 |           16 | 15/07/2014 |
|            1 | Dave      | Green    | The Dolphin       |       1 |        1 |           20 | 13/08/2014 |
|            1 | Dave      | Green    | The Dolphin       |       1 |        1 |            2 | 20/08/2014 |
+--------------+-----------+----------+-------------------+---------+----------+--------------+------------+

I would like to ALSO see the total number of times a membership number appears in the results table, not a COUNT DISTINCT because that would give me this:
+--------------+-----------------+-----------+----------+-------------+---------+----------+--------------+------------+
| MembershipNo | MembershipCount | FirstName | LastName |    Venue    | MemCard | EarlyReg | Venue_Points |    Date    |
+--------------+-----------------+-----------+----------+-------------+---------+----------+--------------+------------+
|            0 |               3 | Bob       | Stevens  | The Dolphin |       1 |        1 |           32 | 27/08/2014 |
|            1 |               2 | Dave      | Green    | The Dolphin |       1 |        1 |           20 | 13/08/2014 |
+--------------+-----------------+-----------+----------+-------------+---------+----------+--------------+------------+

What I want is the original data with the Membership Count on EVERY line like this:
+--------------+-----------------+-----------+----------+-------------------+---------+----------+--------------+------------+
| MembershipNo | MembershipCount | FirstName | LastName |       Venue       | MemCard | EarlyReg | Venue_Points |    Date    |
+--------------+-----------------+-----------+----------+-------------------+---------+----------+--------------+------------+
|            0 |               3 | Bob       | Stevens  | The Dolphin       |       1 |        1 |           32 | 27/08/2014 |
|            0 |               3 | Bob       | Stevens  | The Enigma Tavern |       1 |        1 |           40 | 08/07/2014 |
|            0 |               3 | Bob       | Stevens  | The Enigma Tavern |       1 |        1 |           16 | 15/07/2014 |
|            1 |               2 | Dave      | Green    | The Dolphin       |       1 |        1 |           20 | 13/08/2014 |
|            1 |               2 | Dave      | Green    | The Dolphin       |       1 |        1 |            2 | 20/08/2014 |
+--------------+-----------------+-----------+----------+-------------------+---------+----------+--------------+------------+

Any ideas how I can do this?

A: Seems like an odd approach to tie a rolled up count like in your second query and listing it alongside un-aggregated record data. You could however achieve this getting your aggregated data in a subselect and then joining that subselect to a query similar to your first query.  That might look something like this:
SELECT
    agg.member_count,
    /* other fields from your first query here */
FROM
   (
   /* second query with aggregation total here.. I am assuming you allias the count field as member_count
   */
   ) AS agg
   INNER JOIN Player ON agg.MembershipNo = Player.MembershipNo
   /* make other table joins here as done in first query */
WHERE /* filter */
ORDER BY /* order */

