これを照会すると:
SELECT DISTINCT class_low
FROM groups NATURAL JOIN species
WHERE type ~~ 'faune'
AND class_high ~~ 'Arachnides'
AND (class_middle ~~ 'Araignées' OR class_middle IS NULL)
AND (class_low ~~ '%' OR class_low IS NULL);
私は得る:
class_low
---------------------
Dictynidés
Linyphiidés
Sparassidés
Metidés
Thomisidés
Dolomedidés
Pisauridés
Araignées sauteuses
Araneidés
Lycosidés
Atypidés
Pholcidés
Ségestriidés
Tetragnathidés
Miturgidés
Agelenidés
NULL 値に注意してください (空の varchar ではありません)。
今、そのようにクエリすると:
SELECT array_to_string(array_agg(DISTINCT class_low), ',')
FROM groups NATURAL JOIN species
WHERE type ~~ 'faune'
AND class_high ~~ 'Arachnides'
AND (class_middle ~~ 'Araignées' OR class_middle IS NULL)
AND (class_low ~~ '%' OR class_low IS NULL);
私は得る:
array_to_string
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Agelenidés,Araignées sauteuses,Araneidés,Atypidés,Dictynidés,Dolomedidés,Linyphiidés,Lycosidés,Metidés,Miturgidés,Pholcidés,Pisauridés,Ségestriidés,Sparassidés,Tetragnathidés,Thomisidés
NULL 値は挿入されません。
それを含める方法はありますか?私は次のようなものを持っていることを意味します:
...,,... (ダブルコロンのみ)