Derby delight ... Real Madrid defender Sergio Ramos celebrates his goal (Getty Images)
Real Madrid remained seven points clear of Barcelona at the top of the Primera Division standings after both clubs recorded narrow victories.
A first-half Sergio Ramos goal was enough to give Real Madrid a 1-0 victory at neighbour Getafe as it temporarily moved 10 points clear of Barcelona.
However, Barcelona responded in the late kick-off with a hard-fought 2-1 home win over Real Sociedad.
Lionel Messi set up Cristian Tello for a ninth-minute opener before the Argentina ace then fired home his 23rd league goal of the season in the 72nd minute to make it 2-0.
Sociedad pulled a goal immediately through Carlos Vela after a defensive mistake to set up a nervy finale for Barcelona, but Pep Guardiola's men held on for the points.
Levante's hopes of catching city rival Valencia in third place suffered another setback as it was held to a draw at home by struggling Racing Santander.
Arouna Kone put the host in front midway through the first half with a close-range header, but it wasted further chances to extend the lead and Racing salvaged a point through Manuel Arana's leveller on the hour mark.
Despite dropping two points Levante remains in fourth spot as its two nearest challengers Espanyol and Athletic Bilbao played out a thrilling 3-3 draw at San Mames.
Athletic took the lead through Oscar de Marcos but Espanyol battled back to go 2-1 ahead just after half-time through fine efforts from Ndri Romaric and Vladimir Weiss.
Athletic's threat from set-pieces turned the game around again, though, as Fernando Llorente headed in Markel Susaeta's free-kick before Javi Marquez nodded home seven minutes later to put the host 3-2 ahead.
However, Espanyol salvaged a point when Juan Albin thumped home a stoppage-time equaliser to maintain his side's two-point advantage over Athletic in the race for a UEFA Champions League place.
A first-half Gonzalo Castro free-kick earned Real Mallorca a 1-0 win over Real Betis in a match that produced three red cards. Betis lost Mario in the 75th minute before Mallorca saw Ivan Ramis and Victor dismissed in the final four minutes as it finished with nine men.