Ja, antalet är en aggregerad operator, vilket gör att endast en rad returneras (utan en grupp efter klausul)
Kanske göra två separata frågor? Det är inte meningsfullt att låta raden returnera data och det totala antalet rader, eftersom dessa data inte hör ihop.
Om du verkligen vill ha det kan du göra något så här:
SELECT *, (select count(*) FROM notis WHERE cid=20) AS count FROM notis WHERE cid=20 ORDER BY nid DESC LIMIT 0,3
eller detta:
SELECT N.*, C.total from notis N join (select count(*) total FROM notis WHERE cid=20) C WHERE cid=20) AS count FROM notis WHERE cid=20 ORDER BY nid DESC LIMIT 0,3
Med avvikelser på det kapslade uttrycket beroende på din SQL-dialekt.