One Nation has secured a second seat in the NSW Legislative Council, as the final three seats of 21 upper house places were decided on preferences.

Labor and the Animal Justice Party also picked up another seat each after the final distribution of preferences on Monday, more than three weeks after the state election.

One Nation's NSW upper house representatives Mark Latham and Rob Roberts.

Former federal Senator David Leyonhjelm, the lead candidate for Liberal Democrats narrowly missed out on a seat, as did anti-lockout law party Keep Sydney Open. The Christian Democrats, who were also in the mix for the final three seats, also missed out.

Of the 21 seats up for grabs at the March 23 election, the Coalition have picked up eight seats, Labor seven, the Greens two seats, Shooters, Fishers and Farmers one seat, One Nation two seats, and the Animal Justice Party one seat.