The batsman who has scored the most runs in One Day International (ODI) cricket as of my knowledge cutoff date (2021) is Sachin Tendulkar from India, with a total of 18,426 runs in 463 matches at an average of 44.83. He also holds the record for the most centuries in ODI cricket with 49 centuries. However, it's worth noting that records are constantly being broken and updated, so it's possible that this information may have changed since my knowledge cutoff date.