有时候需要将数据库中两个1:m关系的数据表进行转换为一个独立的表,可以这样处理:
SELECT m.uuid, m.title, m.description, x.data, array_to_string(ARRAY( SELECT keyword.keyword FROM keyword WHERE keyword.id = m.id), ', '::text) AS keyword FROM normalmetadata m LEFT JOIN xml x ON m.id = x.id;
这样就可以将其中的多个keyword转换为一个keyword字符串。
在进行全文搜索的时候,就可以建立一个view来代表所需搜索的全文信息。
reference:
http://gotochriswest.com/blog/2011/07/14/postgresql-converting-rows-into-a-string/
发表回复