export const LIST_BY_ATTRIBUTE_ID = ` SELECT av.id, av.attribute_id AS attributeId, av.value, av.sort, ( SELECT COUNT(DISTINCT aav.article_id) FROM articleattributevalue aav INNER JOIN article a ON a.id = aav.article_id WHERE aav.attributevalue_id = av.id AND a.company_id = an.company_id ) AS articleCount FROM attributevalue av INNER JOIN attributename an ON an.id = av.attribute_id WHERE av.attribute_id = @attributeId AND an.company_id = @companyId ORDER BY av.sort ASC, av.id ASC `; export const LIST_IDS_BY_ATTRIBUTE_ID = ` SELECT av.id FROM attributevalue av INNER JOIN attributename an ON an.id = av.attribute_id WHERE av.attribute_id = @attributeId AND an.company_id = @companyId ORDER BY av.sort ASC, av.id ASC `; export const GET_BY_ID_AND_COMPANY = ` SELECT av.id, av.attribute_id AS attributeId, av.value, av.sort, an.company_id AS companyId FROM attributevalue av INNER JOIN attributename an ON an.id = av.attribute_id WHERE av.id = @id AND an.company_id = @companyId `; export const GET_BY_ATTRIBUTE_AND_VALUE = ` SELECT av.id, av.attribute_id AS attributeId, av.value, av.sort FROM attributevalue av WHERE av.attribute_id = @attributeId AND av.value = @value `; export const GET_NEXT_SORT = ` SELECT ISNULL(MAX(sort), -1) + 1 AS sort FROM attributevalue WHERE attribute_id = @attributeId `; export const CREATE = ` INSERT INTO attributevalue (attribute_id, value, sort) OUTPUT INSERTED.id, INSERTED.attribute_id AS attributeId, INSERTED.value, INSERTED.sort VALUES (@attributeId, @value, @sort) `; export const UPDATE_BY_ID = ` UPDATE attributevalue SET value = @value, sort = @sort WHERE id = @id `; export const UPDATE_SORT = ` UPDATE attributevalue SET sort = @sort WHERE id = @id `; export const DELETE_BY_ID = ` DELETE FROM attributevalue WHERE id = @id `;