A 2. Bundesliga de 2019–20 foi a 46º edição da Segunda Divisão da Alemanha. O campeonato começou em 26 de julho de 2019 e terminou em 11 de julho de 2020.
O Arminia Bielefeld sagrou-se campeão dessa edição ao vencer o em casa por 1–0, pela 32º rodada.
Sistema de competição Participam da 2. Bundesliga 18 clubes que, seguindo um calendário estabelecido por sorteio, se enfrentam entre si em duas partidas de ida e volta. O vencedor de cada partida conquista três pontos, enquanto o empate um ponto e a derrota, zero pontos.
Ao final da temporada, os dois primeiros colocados se classificam à 1. Bundesliga, e o terceiro colocado disputa sua promoção com o 16º colocado da 1. Bundesliga. Os dois últimos são rebaixados à 3. Liga e o 16º colocado disputa sua permanência com o terceiro colocado da 3. Liga.
Equipes Mudança de times PosPromovidos à 1. Bundesliga1º2º3º (Play-offs)
</td><td valign=top>
PosRebaixados da 1. Budesliga16º (Play-offs)17º18º
PosPromovidos da 3. Liga1ºOsnabrück2ºKarlsruher3ºWehen Wiesbaden (Play-offs)
</td><td valign=top>
PosRebaixados à 3. Liga16º (Play-offs)17ºMagdeburg18ºDuisburg
Clubes participantes Equipe Cidade Treinador Capitão Estádio Capacidade Arminia Bielefeld Bielefeld Uwe Neuhaus Fabian Klos Schüco Arena 27.300 Bochum Bochum Thomas Reis Anthony Losilla Ruhrstadion 29.299 Darmstadt Dimitrios Grammozis Fabian Holland Merck-Stadion am Böllenfalltor 17.000 Dynamo Dresden Dresden Markus Kauczinski Marco Hartmann DDV-Stadion 32.066 Erzgebirge Aue Aue Dirk Schuster Martin Männel Sparkassen-Erzgebirgsstadion 15.711 Greuther Fürth Fürth Stefan Leitl Marco Caligiuri Sportpark Ronhof Thomas Sommer 18.500 Hamburgo Dieter Hecking Aaron Hunt Volksparkstadion 57.000 Hannover 96 Hannover Kenan Kocak Marvin Bakalorz HDI-Arena 49.200 Heidenheim Heidenheim Frank Schmidt Marc Schnatterer Voith-Arena 15.000 Kiel Ole Werner Hauke Wahl Holstein-Stadion 15.034 Jahn Regensburg Ratisbona Mersad Selimbegović Marco Grüttner Continental Arena 15.224 Karlsruher Karlsruhe Christian Eichner David Pisot Wildparkstadion 29.699 Nuremberga Michael Wiesinger Hanno Behrens Max-Morlock-Stadion 49.923 Osnabrück Osnabruque Daniel Thioune Marc Heider Stadion an der Bremer Brücke 16.667 Sandhausen Sandhausen Uwe Koschinat Dennis Diekmeier BWT-Stadion am Hardtwald 15.414 St. Pauli Hamburgo Jos Luhukay Christopher Avevor Millerntor-Stadion 29.546 Estugarda Pellegrino Matarazzo Marc-Oliver Kempf Mercedes-Benz Arena 60.449 Wehen Wiesbaden Wiesbaden Rüdiger Rehm Sebastian Mrowca BRITA-Arena 12.250
Classificação Atualizado em 28 de junho de 2020.
EquipesClassificação ou rebaixamento1Arminia Bielefeld6834181426530+35 Promoção à Bundesliga de 2020–2125834177106241+213Heidenheim5534151094536+9 Play-off da Promoção45434141286246+1655234131384843+564834139125449+57Erzgebirge Aue4734138134648–28Bochum46341113105351+29Greuther Fürth44341111124645+110Sandhausen43341013114446–211Holstein Kiel43341110135356–312Jahn Regensburg43341110135056–613Osnabrück4034913124648–214St. Pauli3934912134150–915Karlsruher3734813134556–11163734813134558–13 Play-off do Rebaixamento17Wehen Wiesbaden343497184565–20 Zona de rebaixamento à 3. Liga de 2020–2118Dynamo Dresden323488183258–26
Confrontos {| align="center" cellspacing="0" cellpadding="3" style="background-color: #f9f9f9; text-align: center" class="wikitable" |-style="background:#F0F0F0;" !align="left"| !!ARB!!BOC!!DAR!!DYD!!ERA!!GRF!!HAM!!HAN!!HEI!!HOK!!JAR!!KAR!!NÜR!!OSN!!SAN!!STP!!STU!!WIE'|- !Arminia Bielefeld ! — | bgcolor=#DFE7FF|2–0 | bgcolor=#DFE7FF|1–0 | bgcolor=#DFE7FF|4–0 | bgcolor=#DFE7FF|3–1 | bgcolor=#FFFFDD|2–2 | bgcolor=#FFFFDD|1–1 | bgcolor=#DFE7FF|1–0 | bgcolor=#DFE7FF|3–0 | bgcolor=#DFE7FF|2–1 | bgcolor=#DFE7FF|6–0 | bgcolor=#FFFFDD|2–2 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFDFDF|0–1 | bgcolor=#DFE7FF|1–0 |- !Bochum | bgcolor=#FFFFDD|3–3 ! — | bgcolor=#FFFFDD|2–2 | bgcolor=#FFFFDD|2–2 | bgcolor=#DFE7FF|2–0 | bgcolor=#FFFFDD|2–2 | bgcolor=#FFDFDF|1–3 | bgcolor=#DFE7FF|2–1 | bgcolor=#DFE7FF|3–0 | bgcolor=#DFE7FF|2–1 | bgcolor=#FFDFDF|2–3 | bgcolor=#FFFFDD|3–3 | bgcolor=#DFE7FF|3–1 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFFFDD|4–4 | bgcolor=#DFE7FF|2–0 | bgcolor=#FFDFDF|0–1 | bgcolor=#FFFFDD|3–3 |- !Darmstadt 98 | bgcolor=#FFDFDF|1–3 | bgcolor=#FFFFDD|0–0 ! — | bgcolor=#FFFFDD|0–0 | bgcolor=#DFE7FF|1–0 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFFFDD|2–2 | bgcolor=#DFE7FF|3–2 | bgcolor=#DFE7FF|2–0 | bgcolor=#DFE7FF|2–0 | bgcolor=#FFFFDD|2–2 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFFFDD|3–3 | bgcolor=#FFFFDD|2–2 | bgcolor=#DFE7FF|1–0 | bgcolor=#DFE7FF|4–0 | bgcolor=#FFFFDD|1–1 | bgcolor=#DFE7FF|3–1 |- !Dynamo Dresden | bgcolor=#FFDFDF|0–1 | bgcolor=#FFDFDF|1–2 | bgcolor=#FFDFDF|2–3 ! — | bgcolor=#DFE7FF|2–1 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFDFDF|0–1 | bgcolor=#FFDFDF|0–2 | bgcolor=#DFE7FF|2–1 | bgcolor=#FFDFDF|1–2 | bgcolor=#DFE7FF|2–1 | bgcolor=#DFE7FF|1–0 | bgcolor=#FFDFDF|0–1 | bgcolor=#FFFFDD|2–2 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFFFDD|3–3 | bgcolor=#FFDFDF|0–2 | bgcolor=#DFE7FF|1–0 |- !Erzgebirge Aue | bgcolor=#FFFFDD|0–0 | bgcolor=#FFDFDF|1–2 | bgcolor=#FFDFDF|1–3 | bgcolor=#DFE7FF|4–1 ! — | bgcolor=#DFE7FF|3–1 | bgcolor=#DFE7FF|3–0 | bgcolor=#DFE7FF|2–1 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFDFDF|1–2 | bgcolor=#DFE7FF|1–0 | bgcolor=#DFE7FF|1–0 | bgcolor=#DFE7FF|4–3 | bgcolor=#DFE7FF|1–0 | bgcolor=#DFE7FF|3–1 | bgcolor=#DFE7FF|3–1 | bgcolor=#FFFFDD|0–0 | bgcolor=#DFE7FF|3–2 |- !Greuther Fürth | bgcolor=#FFDFDF|2–4 | bgcolor=#DFE7FF|3–1 | bgcolor=#DFE7FF|3–1 | bgcolor=#DFE7FF|2–0 | bgcolor=#FFDFDF|0–2 ! — | bgcolor=#FFFFDD|2–2 | bgcolor=#FFDFDF|1–3 | bgcolor=#FFFFDD|0–0 | bgcolor=#FFDFDF|0–3 | bgcolor=#DFE7FF|1–0 | bgcolor=#FFDFDF|1–2 | bgcolor=#FFFFDD|0–0 | bgcolor=#FFDFDF|0–2 | bgcolor=#FFDFDF|1–2 | bgcolor=#DFE7FF|3–0 | bgcolor=#DFE7FF|2–0 | bgcolor=#DFE7FF|2–1 |- !Hamburgo | bgcolor=#FFFFDD|0–0 | bgcolor=#DFE7FF|1–0 | bgcolor=#FFFFDD|1–1 | bgcolor=#DFE7FF|2–1 | bgcolor=#DFE7FF|4–0 | bgcolor=#DFE7FF|2–0 ! — | bgcolor=#DFE7FF|3–0 | bgcolor=#FFDFDF|0–1 | bgcolor=#FFFFDD|3–3 | bgcolor=#DFE7FF|2–1 | bgcolor=#DFE7FF|2–0 | bgcolor=#DFE7FF|4–1 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFDFDF|1–5 | bgcolor=#FFDFDF|0–2 | bgcolor=#DFE7FF|6–2 | bgcolor=#DFE7FF|3–2 |- !Hannover 96 | bgcolor=#FFDFDF|0–2 | bgcolor=#DFE7FF|2–0 | bgcolor=#FFDFDF|1–2 | bgcolor=#DFE7FF|3–0 | bgcolor=#DFE7FF|3–2 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFFFDD|1–1 ! — | bgcolor=#DFE7FF|2–1 | bgcolor=#DFE7FF|3–1 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFDFDF|0–4 | bgcolor=#FFFFDD|0–0 | bgcolor=#FFFFDD|1–1 | bgcolor=#DFE7FF|4–0 | bgcolor=#FFFFDD|2–2 | bgcolor=#FFFFDD|2–2 |- !Heidenheim | bgcolor=#FFFFDD|0–0 | bgcolor=#FFDFDF|2–3 | bgcolor=#DFE7FF|1–0 | bgcolor=#FFFFDD|0–0 | bgcolor=#DFE7FF|3–0 | bgcolor=#DFE7FF|1–0 | bgcolor=#DFE7FF|2–1 | bgcolor=#DFE7FF|4–0 ! — | bgcolor=#DFE7FF|3–0 | bgcolor=#DFE7FF|4–1 | bgcolor=#DFE7FF|3–1 | bgcolor=#FFFFDD|2–2 | bgcolor=#DFE7FF|3–1 | bgcolor=#FFDFDF|0–2 | bgcolor=#DFE7FF|1–0 | bgcolor=#FFFFDD|2–2 | bgcolor=#DFE7FF|1–0 |- !Holstein Kiel | bgcolor=#FFDFDF|1–2 | bgcolor=#DFE7FF|2–1 | bgcolor=#FFFFDD|1–1 | bgcolor=#DFE7FF|2–0 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFDFDF|1–2 | bgcolor=#FFDFDF|0–1 ! — | bgcolor=#FFDFDF|1–2 | bgcolor=#DFE7FF|2–1 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFDFDF|2–4 | bgcolor=#FFFFDD|1–1 | bgcolor=#DFE7FF|2–1 | bgcolor=#DFE7FF|3–2 | bgcolor=#FFDFDF|1–2 |- !Jahn Regensburg | bgcolor=#FFDFDF|1–3 | bgcolor=#DFE7FF|3–1 | bgcolor=#DFE7FF|3–0 | bgcolor=#FFDFDF|1–2 | bgcolor=#FFDFDF|1–2 | bgcolor=#FFDFDF|0–2 | bgcolor=#FFFFDD|2–2 | bgcolor=#DFE7FF|1–0 | bgcolor=#DFE7FF|3–1 | bgcolor=#FFFFDD|2–2 ! — | bgcolor=#DFE7FF|2–1 | bgcolor=#FFFFDD|2–2 | bgcolor=#FFFFDD|3–3 | bgcolor=#DFE7FF|1–0 | bgcolor=#DFE7FF|1–0 | bgcolor=#FFDFDF|2–3 | bgcolor=#DFE7FF|1–0 |- !Karlsruher | bgcolor=#FFFFDD|3–3 | bgcolor=#FFFFDD|0–0 | bgcolor=#DFE7FF|2–0 | bgcolor=#DFE7FF|4–2 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFDFDF|1–5 | bgcolor=#FFDFDF|2–4 | bgcolor=#FFFFDD|3–3 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFDFDF|0–2 | bgcolor=#DFE7FF|4–1 ! — | bgcolor=#FFDFDF|0–1 | bgcolor=#FFFFDD|1–1 | bgcolor=#DFE7FF|1–0 | bgcolor=#FFFFDD|1–1 | bgcolor=#DFE7FF|2–1 | bgcolor=#FFDFDF|0–1 |- !Nürnberg | bgcolor=#FFDFDF|1–5 | bgcolor=#FFFFDD|0–0 | bgcolor=#FFDFDF|1–2 | bgcolor=#DFE7FF|2–0 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFDFDF|0–1 | bgcolor=#FFDFDF|0–4 | bgcolor=#FFDFDF|0–3 | bgcolor=#FFFFDD|2–2 | bgcolor=#FFFFDD|2–2 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFFFDD|1–1 ! — | bgcolor=#DFE7FF|1–0 | bgcolor=#DFE7FF|2–0 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFDFDF|0–6 | bgcolor=#FFDFDF|0–2 |- !Osnabrück | bgcolor=#FFDFDF|0–1 | bgcolor=#FFDFDF|0–2 | bgcolor=#DFE7FF|4–0 | bgcolor=#DFE7FF|3–0 | bgcolor=#FFFFDD|0–0 | bgcolor=#FFFFDD|0–0 | bgcolor=#DFE7FF|2–1 | bgcolor=#FFDFDF|2–4 | bgcolor=#FFDFDF|1–3 | bgcolor=#DFE7FF|4–1 | bgcolor=#FFFFDD|2–2 | bgcolor=#DFE7FF|3–0 | bgcolor=#FFDFDF|0–1 ! — | bgcolor=#FFDFDF|1–3 | bgcolor=#FFFFDD|1–1 | bgcolor=#DFE7FF|1–0 | bgcolor=#FFDFDF|2–6 |- !Sandhausen | bgcolor=#FFFFDD|0–0 | bgcolor=#FFFFDD|1–1 | bgcolor=#DFE7FF|1–0 | bgcolor=#FFDFDF|0–1 | bgcolor=#FFFFDD|2–2 | bgcolor=#DFE7FF|3–2 | bgcolor=#FFFFDD|1–1 | bgcolor=#DFE7FF|3–1 | bgcolor=#FFDFDF|0–1 | bgcolor=#FFFFDD|2–2 | bgcolor=#FFFFDD|0–0 | bgcolor=#FFDFDF|0–2 | bgcolor=#DFE7FF|3–2 | bgcolor=#FFDFDF|0–1 ! — | bgcolor=#FFFFDD|2–2 | bgcolor=#DFE7FF|2–1 | bgcolor=#FFFFDD|0–0 |- !St. Pauli | bgcolor=#DFE7FF|3–0 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFDFDF|0–1 | bgcolor=#FFFFDD|0–0 | bgcolor=#DFE7FF|2–1 | bgcolor=#FFDFDF|1–3 | bgcolor=#DFE7FF|2–0 | bgcolor=#FFDFDF|0–1 | bgcolor=#FFFFDD|0–0 | bgcolor=#DFE7FF|2–1 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFFFDD|2–2 | bgcolor=#DFE7FF|1–0 | bgcolor=#DFE7FF|3–1 | bgcolor=#DFE7FF|2–0 ! — | bgcolor=#FFFFDD|1–1 | bgcolor=#DFE7FF|3–1 |- !Stuttgart | bgcolor=#FFFFDD|1–1 | bgcolor=#DFE7FF|2–1 | bgcolor=#FFDFDF|1–3 | bgcolor=#DFE7FF|3–1 | bgcolor=#DFE7FF|3–0 | bgcolor=#DFE7FF|2–0 | bgcolor=#DFE7FF|3–2 | bgcolor=#DFE7FF|2–1 | bgcolor=#DFE7FF|3–0 | bgcolor=#FFDFDF|0–1 | bgcolor=#DFE7FF|2–0 | bgcolor=#DFE7FF|3–0 | bgcolor=#DFE7FF|3–1 | bgcolor=#FFFFDD|0–0 | bgcolor=#DFE7FF|5–1 | bgcolor=#DFE7FF|2–1 ! — | bgcolor=#FFDFDF|1–2 |- !Wehen Wiesbaden | bgcolor=#FFDFDF|2–5 | bgcolor=#FFDFDF|0–1 | bgcolor=#FFFFDD|0–0 | bgcolor=#FFDFDF|2–3 | bgcolor=#DFE7FF|1–0 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFFFDD|1–1 | bgcolor=#FFDFDF|0–3 | bgcolor=#FFFFDD|0–0 | bgcolor=#FFDFDF|3–6 | bgcolor=#FFDFDF|0–5 | bgcolor=#FFDFDF|1–2 | bgcolor=#FFDFDF|0–6 | bgcolor=#DFE7FF|2–0 | bgcolor=#FFDFDF|0–1 | bgcolor=#DFE7FF|5–3 | bgcolor=#DFE7FF|2–1 ! —
Vitória do mandante; Vitória do visitante; Empate.
Desempenho
Clubes que lideraram o campeonato ao final de cada rodada:
Rodadas12345678910111213141516171819202122232425262728293031323334HEIKARHAMSTUHAMARBHAMARB
Clubes que ficaram na última posição do campeonato ao final de cada rodada:
Rodadas12345678910111213141516171819202122232425262728293031323334GRFDYDWIEDYDWIEDYD
Play-offs Play-off de promoção Partida realizada entre o décimo sexto colocado da Bundesliga (Werder Bremen) e o terceiro colocado da 2. Bundesliga (Heidenheim).
Jogo de ida
Jogo de volta 2–2 no placar agregado. O Werder Bremen venceu pelos gols fora e, portanto, ambos os clubes permanecem em suas respectivas ligas. Play-off do rebaixamento Partida realizada entre o décimo sexto colocado da 2. Bundesliga (Nürnberg) e o terceiro colocado da 3. Fußball-Liga (Ingolstadt).
Jogo de ida
Jogo de volta 3–3 no placar agregado. O Nürnberg venceu pelos gols fora e, portanto, ambos os clubes permanecem em suas respectivas ligas.''
Estatísticas
Artilheiros Atualizado em 28 de junho de 2020