Sobes.tech

Data Analyst

Δύο κρατούμενοι σε διαφορετικά κελιά ρίχνουν ένα νόμισμα και, βλέποντας μόνο το αποτέλεσμα του δικού τους νομίσματος, πρέπει να πουν το αποτέλεσμα του νομίσματος του γείτονά τους. Αν τουλάχιστον ένας μαντέψει σωστά, και οι δύο απελευθερώνονται· αν και οι δύο κάνουν λάθος, σκοτώνονται. Ποια στρατηγική απαντήσεων πρέπει να επιλέξουν για να επιβιώσουν με 100% πιθανότητα;

Middle
170

Προτείνετε έναν αλγόριθμο που, βάσει δεδομένων κίνησης κλήσεων και γεωεντοπισμού των συνδρομητών κάθε 15 λεπτά, θα καθορίζει αν δύο συνδρομητές ζουν μαζί.

Middle
131

Πώς μετράτε ακριβώς 4 λίτρα χρησιμοποιώντας δοχεία 3 και 5 λίτρων και μια απεριόριστη πηγή νερού;

Middle
131

Ποιο σύμβολο πρέπει να αναφερθεί μετά το SELECT για να επιλεγούν όλες οι στήλες;

Middle
129

Γνωρίζετε μαθηματικά στατιστικά και έχετε εφαρμόσει δοκιμές A/B στην πράξη; Ποια είδη μέσων γνωρίζετε;

Middle
127

Πώς να αφήσετε μόνο τις κατηγορίες με συνολικά έσοδα μεγαλύτερα από 100 ρούβλια;

Middle
126

Έχετε εργαστεί ποτέ με το Git;

Middle
116

Θα διαφέρουν τα αποτελέσματα που επιστρέφονται από τα ακόλουθα ερωτήματα; 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'

Middle
114

Προτείνετε έναν αλγόριθμο για τον προσδιορισμό της ημέρας γενεθλίων του συνδρομητή, έχοντας μόνο το αρχείο κλήσεων και SMS: εισερχόμενους και εξερχόμενους αριθμούς, ημερομηνία-ώρα, διάρκεια και τύπο συμβάντος.

Middle
106

Πώς κατηγοριοποιούνται οι πωλήσεις προϊόντων που δεν ανήκουν σε καμία κατηγορία, στην κατηγορία «Άλλο»;

Middle
105

Παρουσιάζονται οι πίνακες product (πληροφορίες σχετικά με το σε ποια κατηγορία ανήκει το προϊόν σε ένα συγκεκριμένο διάστημα ημερομηνιών) και sale (δεδομένα πωλήσεων του προϊόντος με ημερομηνία πώλησης, τιμή ανά μονάδα και ποσότητα που αγοράστηκε): select * from product |prod_nm |prod_cat |eff_dt |exp_dt | |--------|---------|-----------|-----------| |Προϊόν 1|Κατηγορία 1|[phone]|[phone]| |Προϊόν 1|Κατηγορία 2|[phone]|[phone]| |Προϊόν 2|Κατηγορία 3|[phone]|[phone]| select * from sale |sale_dt |prod_nm |price|cnt| |----------|---------|-----|---| |[phone]|Προϊόν 1|10 |5 | |[phone]|Προϊόν 1|15 |2 | |[phone]|Προϊόν 4|15 |2 | |[phone]|Προϊόν 3|15 |2 | |[phone]|Προϊόν 2|10.9 |300| |[phone]|Προϊόν 1|12.7 |7 | Πρέπει να γράψετε ένα ερώτημα που επιστρέφει το συνολικό έσοδο ανά κατηγορία: |prod_cat |total_amt| |----------|---------| |Κατηγορία 1|80 | |Κατηγορία 2|84 | |Κατηγορία 3|270 |

Middle
105

Είναι απαραίτητο να γράψετε ένα ερώτημα που να επιστρέφει το συνολικό εισόδημα ανά κατηγορία: |prod_cat |total_amt | |Κατηγορία 1|80 | |Κατηγορία 2|84 | |Κατηγορία 3|270 | Υπάρχει ένας πίνακας συνδρομητών με εγγραφές που έφτασαν σε διαφορετικές στιγμές. Η ημερομηνία φόρτωσης της εγγραφής ορίζεται στο πεδίο 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]| Απαιτείται να γράψετε ένα ερώτημα που να επιστρέφει την προτελευταία φορτωμένη εγγραφή ανά κλειδί 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]| Υπάρχει ένας πίνακας με ιστορικό αλλαγών των συνδρομητών. Κάθε εγγραφή είναι έγκυρη από valid_from_dt έως valid_to_dt. Αν μια εγγραφή κλείσει, η επόμενη ξεκινά την ίδια ημέρα. Για κάθε συνδρομητή, πρέπει να υπάρχει μόνο μία ενεργή εγγραφή εντός του διαστήματος [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 | Απαιτείται να γράψετε ένα ερώτημα που να επιστρέφει τις εγγραφές με λανθασμένη ημερομηνία κλεισίματος: |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 | με 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

Middle
101

Υπάρχουν τρεις λαμπτήρες στο δωμάτιο και τρεις διακόπτες έξω. Όλοι είναι σβηστοί και μπορείτε να μπείτε στο δωμάτιο μόνο μία φορά. Πώς να προσδιορίσετε ποιος διακόπτης ελέγχει κάθε λαμπτήρα;

Middle
95

Απαιτείται να γράψετε ένα ερώτημα που θα επιστρέφει την προτελευταία φορτωμένη εγγραφή με βάση το κλειδί id: |id |msisdn |tarif_plan_id|account_id|raw_dt | |------------|-----------|-------------|----------|-----------| |[phone]|5842 |4979 |[phone]| |[phone]|4563 |0832 |[phone]| |[phone]|4563 |0832 |[phone]| Υπάρχει ένας πίνακας συνδρομητών με ιστορικό αλλαγών. Κάθε εγγραφή για συνδρομητή ισχύει στην περίοδο από valid_from_dt έως valid_to_dt. Αν μια εγγραφή κλείνει, η επόμενη ξεκινά την ίδια ημερομηνία. Για κάθε συνδρομητή, πρέπει να υπάρχει μόνο μία ενεργή εγγραφή στην περιοχή [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 | Πρέπει να γράψετε ένα ερώτημα που θα επιστρέφει τις εγγραφές με λανθασμένες ημερομηνίες κλεισίματος. |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 |

Middle
79