LINUX.ORG.RU

История изменений

Исправление Toxo2, (текущая версия) :

Можно ещё такой финт ушами:

SELECT 
	 date_part('month',enter_date)
	,(string_to_array(max(enter_date || '>' || amount), '>'))[1]::timestamp
	,(string_to_array(max(enter_date || '>' || amount), '>'))[2]::int
FROM
	budget
GROUP BY 1;

Если верить EXPLAIN - стоимость запроса даже дешевле, чем у Максима.

Исправление Toxo2, :

Можно ещё такой финт ушами:

SELECT 
	 date_part('month',enter_date)
	,(string_to_array(max(enter_date || '>' || amount), '>'))[1]::timestamp
	,(string_to_array(max(enter_date || '>' || amount), '>'))[2]::int
FROM
	budget
GROUP BY 1;

Если верить EXPLAIN - стоимость запроса даже дешевле, чем у Максима.

string_to_array всё равно объявлена, как IMMUTABLE PARALLEL SAFE и по идее не будет два раза вызываться для одних и тех же аргументов.

Исходная версия Toxo2, :

Можно ещё такой финт ушами:

SELECT 
	 date_part('month',enter_date)
	,(string_to_array(max(enter_date || '>' || amount), '>'))[1]::timestamp
	,(string_to_array(max(enter_date || '>' || amount), '>'))[2]::int
FROM
	budget
GROUP BY 1;

Если верить EXPLAIN - стоимость запроса даже дешевле, чем у Максима.