You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Delete entity and related claims, if entity doesn't have the claim, number of episodes property (P1113)
let $del = select claims, id from Entity
where claims.claims[where id = Property:1113].value.Thing == [];
let $entity = return (select id from $del).id;
let $claims = return (select claims from $del).claims;
delete $claims;
delete $entity;
Create a view for media
DEFINE TABLE Media TYPE NORMAL AS
SELECT
*,
# Number of episodes
(claims.claims[WHERE id = Property:1113].value.ClaimValueData.Quantity.amount)[0] AS episodes,
# Part of the series (parent)
(claims.claims[WHERE id = Property:179].value.Thing)[0] AS parent,
# Has part(s) (children)
claims.claims[WHERE id = Property:527].value.Thing AS children
FROM Entity;
# Full-Text Search
DEFINE ANALYZER OVERWRITE blank_english TOKENIZERS blank FILTERS lowercase, ascii, snowball(english);
Select for media
SELECT
*,
# number of episodes
(claims.claims[WHERE id = Property:1113].value.ClaimValueData.Quantity.amount)[0] AS episodes,
# part of the series
(claims.claims[WHERE id = Property:179].value.Thing)[0] AS parent,
# has part(s)
claims.claims[WHERE id = Property:527].value.Thing AS children
FROM Entity;
Get number of episodes
let $number_of_episodes = (select claims.claims[where id = Property:1113][0].value.ClaimValueData.Quantity.amount as number_of_episodes from Entity where label = "Black Clover, season 1")[0].number_of_episodes;
return $number_of_episodes;
update Entity SET number_of_episodes=$number_of_episodes where label = "Black Clover, season 1";
Get Parts
let $parts = (select claims.claims[where id = Property:527].value.Thing as parts from Entity where label = "Black Clover")[0].parts;
return $parts;