Это потому, что вы не очищаете данные из BillTableArray перед добавлением в них новых данных.Вы перезапускаете свой запрос по всей таблице - таким образом снова извлекаете все свои записи, включая те, которые вы уже настроили в BillTableArray при начальной загрузке представления.
Проблема заключается в следующей строке:
[BillTableArray addObjectsFromArray:countArray1];
BillTableArray уже загружен данными из вашего первоначального вызова viewDidLoad, но выполненный вами запрос снова получает все эти данные из базы данных, и эта строка добавляет все эти объекты в массив во второй раз.Таким образом, вы, вероятно, видите дубликаты всего , за исключением недавно добавленных элементов.
Вам, вероятно, просто нужно сделать:
BillTableArray = [countArray1 retain];
или что-то подобное (не забудьтесохранить / освободить объекты соответствующим образом, чтобы гарантировать, что вы не потеряете их и не утечете, не знаете, как объявлен BillTableArray.