held |A |colspan=3 style=color:#767676|not held |bgcolor=ffebcd|QF |colspan=3 style=color:#767676|not held |bgcolor=afeeee|2R |colspan=4 style=color:#767676|not held |A |colspan=1 style=color:#767676|NH !0 / 2 !4–2 !67% |- |bgcolor=efefef align=left|Davis Cup |A |A |A |A |A |bgcolor=ffebcd|QF |bgcolor=afeeee|1R |bgcolor=thistle|F |bgcolor=yellow|SF |bgcolor=ffebcd|QF |bgcolor=ffebcd|QF |bgcolor=thistle|F |bgcolor=ffebcd|QF |bgcolor=yellow|SF |bgcolor=lime|W |bgcolor=thistle|F |style=background:#afeeee|RR |style=color:#767676|NH |A |A !1 / 11 !22–10 !70% |- |colspan=24 align=left|ATP World Tour Masters 1000 |- |bgcolor=efefef align=left|Indian Wells Masters |A |A |bgcolor=f0f8ff|Q1 |A |A |bgcolor=afeeee|4R |bgcolor=afeeee|3R |bgcolor=afeeee|4R |bgcolor=afeeee|2R |bgcolor=afeeee|4R |bgcolor=ffebcd|QF |bgcolor=afeeee|2R |A |bgcolor=ffebcd|QF |bgcolor=afeeee|2R |A |A | rowspan="4" style="color:#767676" |NH |A |A |bgcolor=efefef|0 / 9 |bgcolor=efefef|13–9 |bgcolor=efefef|59% |- |bgcolor=efefef align=left|Miami Open |A |A |bgcolor=f0f8ff|Q1 |A |A |bgcolor=afeeee|3R |bgcolor=ffebcd|QF |bgcolor=ffebcd|QF |bgcolor=afeeee|3R |bgcolor=ffebcd|QF |bgcolor=afeeee|4R |bgcolor=afeeee|4R |bgcolor=afeeee|3R |bgcolor=afeeee|3R |A |A |bgcolor=f0f8ff|Q2 |A |bgcolor=afeeee|1R |bgcolor=efefef|0 / 10 |bgcolor=efefef|17–10 |bgcolor=efefef|65% |- |bgcolor=efefef align=left|Monte-Carlo Masters |A |A |A |A |A |A |A |bgcolor=afeeee|3R |bgcolor=afeeee|2R |bgcolor=ffebcd|QF |bgcolor=yellow|SF |bgcolor=ffebcd|QF |bgcolor=afeeee|3R |bgcolor=yellow|SF |bgcolor=afeeee|2R |A |bgcolor=afeeee|1R |A |bgcolor=afeeee|1R |bgcolor=efefef|0 / 10 |bgcolor=efefef|14–10 |bgcolor=efefef|58% |- |bgcolor=efefef align=left|Madrid Open |A |A |A |A |A |bgcolor=afeeee|2R |bgcolor=afeeee|2R |bgcolor=afeeee|2R |bgcolor=afeeee|3R |bgcolor=afeeee|3R |bgcolor=ffebcd|QF |bgcolor=afeeee|2R |bgcolor=afeeee|3R |bgcolor=afeeee|3R |bgcolor=afeeee|2R |A |A |A |A |bgcolor=efefef|0 / 10 |bgcolor=efefef|11–9 |bgcolor=efefef|55% |- |bgcolor=efefef align=left|Italian Open |A |A |A |A |A |bgcolor=afeeee|1R |bgcolor=afeeee|1R |bgcolor=ffebcd|QF |bgcolor=afeeee|2R |bgcolor=ffebcd|QF |bgcolor=afeeee|2R |bgcolor=afeeee|3R |bgcolor=afeeee|2R |A |A |A |bgcolor=afeeee|1R |A |A |A |bgcolor=efefef|0 / 9 |bgcolor=efefef|8–9 |bgcolor=efefef|47% |- |bgcolor=efefef align=left|Canadian Open |A |A |A |A |A |A |bgcolor=yellow|SF |A |bgcolor=yellow|SF |bgcolor=afeeee|2R |A |bgcolor=lime|W |bgcolor=ffebcd|QF |A |bgcolor=afeeee|2R |A |bgcolor=afeeee|1R |style=color:#767676|NH |A |A |bgcolor=efefef|1 / 7 |bgcolor=efefef|16–6 |bgcolor=efefef|73% |- |bgcolor=efefef align=left|Cincinnati Masters |A |A |A |A |A |A |bgcolor=afeeee|2R |A |bgcolor=afeeee|2R |A |A |bgcolor=afeeee|1R |bgcolor=afeeee|1R |bgcolor=afeeee|3R |bgcolor=afeeee|2R |A |A |A |A |A |bgcolor=efefef|0 / 6 |bgcolor=efefef|2–6 |bgcolor=efefef|25% |- |bgcolor=efefef align=left|Shanghai Masters |A |A |A |A |A |bgcolor=afeeee|3R |bgcolor=afeeee|3R |bgcolor=ffebcd|QF |bgcolor=afeeee|2R |bgcolor=ffebcd|QF |bgcolor=yellow|SF |A |bgcolor=thistle|F |bgcolor=ffebcd|QF |A |A |A | colspan="2" style="color:#767676" |NH |A |bgcolor=efefef|0 / 8 |bgcolor=efefef|18–8 |bgcolor=efefef|69% |- |bgcolor=efefef align=left|Paris Masters |A |bgcolor=afeeee|2R |A |bgcolor=f0f8ff|Q2 |bgcolor=afeeee|2R |bgcolor=lime|W |bgcolor=ffebcd|QF |A |bgcolor=thistle|F |bgcolor=ffebcd|QF |bgcolor=afeeee|2R |bgcolor=afeeee|3R |bgcolor=afeeee|3R |bgcolor=ffebcd|QF |bgcolor=afeeee|2R |bgcolor=afeeee|1R |bgcolor=ffebcd|QF |A |A |A |bgcolor=efefef|1 / 13 |bgcolor=efefef|21–12 |bgcolor=efefef|64% |- !style=text-align:left|Win–loss !0–0 !1–1 !0–0 !0–0 !1–1 !10–5 !11–8 !11–6 !13–9 !14–8 !13–7 !14–7 !15–8 !14–7 !1–5 !0–1 !3–4 !0–0 !0–0 !0–2 !2 / 81 !121–79 !61% |- |colspan=24 align=left|Career statistics |- !!!|2003!!2004!!2005!!2006!!2007!!2008!!2009!!2010!!2011!!2012!!2013!!2014!!2015!!2016!!2017!!2018!!2019!!2020!!2021 !2022!!SR!!W–L!!Win % |- bgcolor="efefef" | style="text-align:left" |Tournaments |0 |2 |1 |0 |10 |16 |23 |15 |24 |24 |17 |18 |16 |16 |19 |6 |20 |2 |8 |7 | colspan="3" |244 |-bgcolor=efefef !style=text-align:left|Finals !0 !0 !0 !0 !0 !3 !3 !0 !6 !4 !2 !2 !2 !1