При выборке двух таблиц с БД одним запросом, на выводе получаются дубликаты. В чем может быть проблема?
Вы делаете выборку декартова произведения двух таблиц. Значит на выходе у вас все возможные пары строк из первой и второй таблиц.
Если у этих таблиц  есть поля, по которым их можно связать (с одинаковыми значениями), например id или что-то в этом роде, то Вы можете связать их примерно так:
SELECT с.*, p.*
FROM cart с
LEFT JOIN table_products p ON p.id = c.products_id
LIMIT 10000
Если в таблицах названия каких-то столбцов совпадают, надо это SELECT с.*, p.* переписать, указав конкретные столбцы, иначе будет неопределённость.