Dois prisioneiros em celas diferentes lançam uma moeda e, vendo apenas o resultado da sua própria moeda, devem dizer o resultado da moeda do vizinho. Se pelo menos um acertar, ambos são libertados; se ambos errarem, são mortos. Qual estratégia de respostas eles devem escolher para sobreviver com 100% de probabilidade?
Data Analyst
Proponha um algoritmo que, com base nos dados de tráfego de chamadas e geolocalização dos assinantes a cada 15 minutos, determine se dois assinantes vivem juntos.
Qual símbolo deve ser indicado após SELECT para selecionar todas as colunas?
Conhece estatística matemática e já aplicou testes A/B na prática? Quais tipos de médias conhece?
Como medir exatamente 4 litros usando recipientes de 3 e 5 litros e uma fonte de água ilimitada?
Como deixar apenas as categorias cuja receita total seja superior a 100 rublos?
Já trabalhou com Git?
Os resultados retornados pelas seguintes consultas serão diferentes? 1 select * from A left join B on A.id = B.id and B.val = 'A' 2 select * from A left join B on A.id = B.id where B.val = 'A'
Proponha um algoritmo para determinar o dia de nascimento do assinante, tendo apenas o registo de chamadas e SMS: números de entrada e saída, data-hora, duração e tipo de evento.
São apresentadas as tabelas product (informações sobre a qual categoria o produto pertence num intervalo de datas especificado) e sale (dados de vendas do produto com a data de venda, preço por unidade e quantidade comprada): select * from product |prod_nm |prod_cat |eff_dt |exp_dt | |--------|---------|-----------|-----------| |Produto 1|Categoria 1|[phone]|[phone]| |Produto 1|Categoria 2|[phone]|[phone]| |Produto 2|Categoria 3|[phone]|[phone]| select * from sale |sale_dt |prod_nm |price|cnt| |----------|---------|-----|---| |[phone]|Produto 1|10 |5 | |[phone]|Produto 1|15 |2 | |[phone]|Produto 4|15 |2 | |[phone]|Produto 3|15 |2 | |[phone]|Produto 2|10.9 |300| |[phone]|Produto 1|12.7 |7 | É necessário escrever uma consulta que retorne a receita total por cada categoria: |prod_cat |total_amt| |----------|---------| |Categoria 1|80 | |Categoria 2|84 | |Categoria 3|270 |
Como classificar as vendas de produtos que não se enquadram em nenhuma categoria, na categoria "Outros"?
É necessário escrever uma consulta que retorne a receita total por cada categoria: |prod_cat |total_amt | |Categoria 1|80 | |Categoria 2|84 | |Categoria 3|270 | Existe uma tabela de assinantes com registros que chegaram em momentos diferentes. A data de carregamento do registo é definida no campo raw_dt: select * from abnt |id |msisdn |tarif_plan_id|account_id|raw_dt | |1 |[phone]|4375 |4979 |[phone]| |1 |[phone]|5842 |4979 |[phone]| |2 |[phone]|5842 |589783|[phone]| |2 |[phone]|4563 |5326 |[phone]| |2 |[phone]|4563 |0832 |[phone]| |3 |[phone]|4563 |0832 |[phone]| |3 |[phone]|5495 |7485 |[phone]| |3 |[phone]|4563 |0832 |[phone]| |3 |[phone]|4563 |0832 |[phone]| É necessário escrever uma consulta que retorne a penúltima entrada carregada por chave id: |id |msisdn |tarif_plan_id|account_id|raw_dt | |1 |[phone]|5842 |4979 |[phone]| |2 |[phone]|4563 |0832 |[phone]| |3 |[phone]|4563 |0832 |[phone]| Existe uma tabela de assinantes com histórico de alterações. Cada registro para um assinante é válido no período de valid_from_dt até valid_to_dt. Se um registro é encerrado, o próximo começa na mesma data. Deve haver apenas um registro ativo por assinante no intervalo [valid_from_dt, valid_to_dt]. select * from abnt |id |valid_from_dt|valid_to_dt|msisdn |tarif_plan_id|account_id| |1 |[phone] |[phone] |[phone]|4375 |4979 | |2 |[phone] |[phone] |[phone]|5842 |589783| |2 |[phone] |[phone] |[phone]|4563 |5326 | |3 |[phone] |[phone] |[phone]|4563 |0832 | É necessário escrever uma consulta que retorne os registros com uma data de encerramento incorreta. |id |valid_from_dt|valid_to_dt|msisdn |tarif_plan_id|account_id| |2 |[phone] |[phone] |[phone]|5842 |4979 | |2 |[phone] |[phone] |[phone]|4563 |5326 | com ranked as ( select msisdn, tarif_plan_id, account_id, raw_dt, row_number() over (partition by id order by raw_dt desc) as rn ) select id, msisdn, tarif_plan_id, account_id, raw_dt from ranked where rn = 2 order by id
Há três lâmpadas na sala e três interruptores lá fora. Todos estão desligados, e só é possível entrar na sala uma vez. Como determinar qual interruptor controla cada lâmpada?
É necessário escrever uma consulta que retorne o penúltimo registo carregado pela chave id: |id |msisdn |tarif_plan_id|account_id|raw_dt | |------------|-----------|-------------|----------|-----------| |[phone]|5842 |4979 |[phone]| |[phone]|4563 |0832 |[phone]| |[phone]|4563 |0832 |[phone]| Existe uma tabela de assinantes com histórico de alterações. Cada registo por assinante é válido no período de valid_from_dt até valid_to_dt. Se um registo é encerrado, o seguinte começa na mesma data. Deve haver apenas um registo ativo para cada assinante no intervalo [valid_from_dt, valid_to_dt]. select * from abnt |id|valid_from_dt|valid_to_dt|msisdn |tarif_plan_id|account_id| |--|-------------|-----------|-------------|-------------|----------| |1 |[phone] |[phone] |[phone] |4375 |4979 | |1 |[phone] |[phone] |[phone] |5842 |4979 | |2 |[phone] |[phone] |[phone] |4563 |5326 | |2 |[phone] |[phone] |[phone] |4563 |0832 | É necessário escrever uma consulta que retorne os registros com datas de encerramento incorretas. |id|valid_from_dt|valid_to_dt|msisdn |tarif_plan_id|account_id| |--|-------------|-----------|-------------|-------------|----------| |1 |[phone] |[phone] |[phone] |5842 |4979 | |2 |[phone] |[phone] |[phone] |4563 |5326 |