diff options
| -rw-r--r-- | gentoobrowse-api/service/sql/portage/getPackageUses.sql | 17 | 
1 files changed, 8 insertions, 9 deletions
| diff --git a/gentoobrowse-api/service/sql/portage/getPackageUses.sql b/gentoobrowse-api/service/sql/portage/getPackageUses.sql index 0d14a64..5e74e35 100644 --- a/gentoobrowse-api/service/sql/portage/getPackageUses.sql +++ b/gentoobrowse-api/service/sql/portage/getPackageUses.sql @@ -1,4 +1,4 @@ -SELECT SUBSTRING(COALESCE(ugg.use, eu.use), 1, 1) = '+' isdefault, ul.packageid, ugg.name AS group, LTRIM(COALESCE(ugg.use, eu.use), '+') AS use, +SELECT SUBSTRING(COALESCE(ugg.use, eu.use), 1, 1) = '+' isdefault, ul.packageid, ugs.name AS group, LTRIM(COALESCE(ugg.use, eu.use), '+') AS use,  		COALESCE(ul.description, ugg.description, ug.description) description  FROM gentoobrowse.ebuilds e  	JOIN gentoobrowse.ebuild_uses eu @@ -8,12 +8,11 @@ FROM gentoobrowse.ebuilds e  	LEFT OUTER JOIN gentoobrowse.use_local ul  		ON LTRIM(eu.use, '+') = ul.use  		AND ul.packageid = e.packageid -	LEFT OUTER JOIN ( -			SELECT ugs.usegroupid, ugs.name, ugg.use, ugg.description -			FROM gentoobrowse.use_group ugg, gentoobrowse.use_groups ugs -			WHERE ugs.usegroupid = ugg.usegroupid) ugg -		ON REVERSE(SPLIT_PART(REVERSE(eu.use), '_', 1)) = ugg.use -		AND LEFT(eu.use, LENGTH(eu.use) - LENGTH(SPLIT_PART(REVERSE(eu.use), '_', 1)) - 1) = ugg.name +	LEFT OUTER JOIN gentoobrowse.use_groups ugs +		ON eu.use like ugs.name || '\_%' escape '\' +	LEFT OUTER JOIN gentoobrowse.use_group ugg +		ON ugg.usegroupid = ugs.usegroupid +		AND eu.use = ugs.name || '_' || ugg.use  WHERE e.packageid = ? -GROUP BY eu.use, ul.use, ul.packageid, ug.use, ugg.name, ugg.usegroupid, ugg.use, ugg.description -ORDER BY ugg.name nulls first, eu.use +GROUP BY eu.use, ul.use, ul.packageid, ug.use, ugs.name, ugg.usegroupid, ugg.use, ugg.description +ORDER BY ugs.name nulls first, eu.use | 
