figure сообщает вам сигнатуру вызова:
from matplotlib.pyplot import figure
figure(num=None, figsize=(8, 6), dpi=80, facecolor='w', edgecolor='k')
figure(figsize=(1,1))
создаст изображение в дюймах на дюйм, которое будет составлять 80 на 80 пикселей, если только вы также даете другой аргумент dpi.
Вы хотите одну строку для каждого значения AID + OCD, поэтому вам нужно что-то вроде:
WITH main AS
(
<complex query that returns main table>
)
SELECT *
FROM main
WHERE DELMN = (SELECT MIN(DELMN)
FROM main AS b
WHERE b.OCD=main.OCD AND b.AID = main.AID)
GROUP BY AID, OCD
Это не будет очень эффективный запрос, но должен работать. Это может быть более эффективным, присоединяясь к запросу, который вытягивает минимальную группу DELMN
на AID
и OCD
(вместо использования подвыбора, который выполняется для каждой строки). Таким образом, нужно только один раз отсканировать эти таблицы. Не беспокойтесь об этом, если у вас много строк, что замедляет его.