Data Analyst
Qual é a diferença entre os comandos DROP e TRUNCATE?
Qual símbolo deve ser indicado após SELECT para selecionar todas as colunas?
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?
Como se conectar a uma base de dados usando Python?
[nome] conte-nos sobre si e o que faz.
Terá a possibilidade de trabalhar de acordo com o horário de Moscovo, começando às 8, 9 ou 10 da manhã?
Que tarefas seriam do seu interesse em um novo local de trabalho?
Como explica aos funcionários com visões bastante tradicionais a necessidade de inovações e automação?
Qual é a principal diferença entre funções de janela e funções de agregação com GROUP BY?
Como classificar as vendas de produtos que não se enquadram em nenhuma categoria, na categoria "Outros"?
Tem um prazo para mudar-se para Moscovo, ou isso está ligado à procura de emprego?
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.
Qual é a diferença entre HAVING e WHERE?
É 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 |
É 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
Como agregar valores por uma única coluna e um indicador em Pandas?
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 filtrar um DataFrame por uma condição?
Fale sobre um dia de trabalho típico e o volume de comunicação com a equipa (considerando que a equipa de suporte tem cerca de 10-12 pessoas).
Qual é a diferença entre as funções de janela ROW_NUMBER, RANK e DENSE_RANK?