PostgreSQL 的一些函数的使用

1.string_agg、string_to_array

string_agg 是 PostgreSQL 数据库中的一个函数,用于将多个字符串值连接成一个字符串
string_to_array 是 PostgreSQL 数据库中的一个函数,用于将字符串分割成数组

select *,
	(SELECT string_agg(
			CASE animal_type.animal_type 
				WHEN '0' THEN '其他' 
				WHEN '1' THEN '小鸡' 
				WHEN '2' THEN '小马' 
				WHEN '3' THEN '小猫' 
				WHEN '4' THEN '小虎' 
				WHEN '5' THEN '小牛' 
				WHEN '6' THEN '小猪' 
			END,',') 
		FROM zoo t
		CROSS JOIN LATERAL UNNEST(string_to_array(t.animal_type,',')) AS animal_type 
		WHERE t.id=tt.id) as animal_name
FROM zoo tt
select *,
	(SELECT string_agg(
			CASE temptable
				WHEN '0' THEN '其他' 
				WHEN '1' THEN '小鸡' 
				WHEN '2' THEN '小马' 
				WHEN '3' THEN '小猫' 
				WHEN '4' THEN '小虎' 
				WHEN '5' THEN '小牛' 
				WHEN '6' THEN '小猪' 
			END,',') 
		FROM zoo t
		CROSS JOIN LATERAL UNNEST(string_to_array(t.animal_type,',')) AS temptable
		WHERE t.id=tt.id) as animal_name
FROM zoo tt
posted @ 2024-01-09 11:15  进阶的哈姆雷特  阅读(28)  评论(0编辑  收藏  举报