Sei que estou entrando em detalhes, mas estou implementando algo para processar um feed multilíngue.
Na tabela de ingestão bruta, que tem aproximadamente 190 milhões de linhas, eu queria capturar tudo o que o fornecedor nos enviou, mas devo repassar apenas as linhas que estão em um pequeno subconjunto de idiomas aprovados.
Originalmente, essa lista era apenas em inglês, mas agora eles querem aumentar a lista de idiomas "aprovados".
Então, tenho vários lugares onde a etapa de processamento é
WHERE lang_code = 'en'
que precisam de ajustes.
Eu criei algumas implementações
- Variável de tabela muito pequena na rotina de processamento do feed com 2-3 linhas para códigos "aprovados".
- Uma tabela permanente muito pequena contendo 2 a 3 linhas para códigos aprovados.
- PATINDEX em uma string de vírgula com códigos aprovados (por exemplo, WHERE PATINDEX('%,'+lang_code+',%', ',en,de,pl,') > 0)
A lista pode crescer para 5 ou 6, mas é improvável que passe de 10.
Para esse tipo de lista muito curta, eu queria saber onde as pessoas podem ver a linha entre implementações de tabela e implementações apenas "nesta sequência curta".