Fünfundzwanzig SQL-Übungsübungen

Veröffentlicht in: Articles | 0

Stornierungsraten

Schreiben Sie aus der folgenden Tabelle mit Benutzer-IDs, Aktionen und Daten eine Abfrage, um die Veröffentlichungs-und Stornierungsrate für jeden Benutzer zurückzugeben.

Änderungen des Vermögens

Aus der folgenden Tabelle schreiben Sie von Transaktionen zwischen zwei Benutzern eine Abfrage, um die Änderung des Nettovermögens für jeden Benutzer zurückzugeben, geordnet nach abnehmender Nettoänderung.,

Die häufigsten Elemente

Aus der folgenden Tabelle mit liste der bestellten Daten und Elemente, schreiben Sie eine Abfrage, um das am häufigsten bestellte Element an jedem Datum zurückzugeben. Geben Sie im Falle einer Krawatte mehrere Artikel zurück.,

Zeitunterschied zwischen den letzten Aktionen

Aus den folgenden tabelle der Benutzeraktionen, schreiben Sie eine Abfrage, um für jeden Benutzer die zwischen der letzten Aktion und der vorletzten Aktion verstrichene Zeit in aufsteigender Reihenfolge nach Benutzer-ID zurückzugeben.,

Super user

Ein Unternehmen definiert seine super-Benutzer als diejenigen, die aus mindestens zwei Transaktionen. Schreiben Sie aus der folgenden Tabelle eine Abfrage, um für jeden Benutzer das Datum zurückzugeben, an dem er ein Superbenutzer wird, der zuerst von den ältesten Superbenutzern geordnet wird. Benutzer, die keine Superbenutzer sind, sollten ebenfalls in der Tabelle vorhanden sein.,

Inhaltsempfehlung (hard)

Verwenden der schreiben Sie nach zwei Tabellen eine Abfrage, um Seitenempfehlungen an einen Social-Media-Benutzer zurückzugeben, basierend auf den Seiten, die ihren Freunden gefallen haben, die sie jedoch noch nicht als gefallen markiert haben. Ordnen Sie das Ergebnis nach aufsteigender Benutzer-ID an. Quelle.,

Mobile and web visitors

With the following two tables, return the fraction of users who only visited mobile, only visited web, and visited both.,

Upgrade rate by product action (hard)

Geben Sie in den folgenden zwei Tabellen den auf zwei Dezimalstellen gerundeten Benutzeranteil zurück, der auf feature two (type: F2 in der Veranstaltungstabelle) und innerhalb der ersten 30 Tage nach der Anmeldung auf Premium aktualisiert.,

Most friended

Geben Sie in der folgenden Tabelle eine Liste der Benutzer und die Anzahl ihrer entsprechenden Freunde zurück. Ordnen Sie das Ergebnis nach absteigender Freundeszahl und im Falle einer Krawatte nach aufsteigender Benutzer-ID an., Angenommen, es werden nur eindeutige Freundschaften angezeigt
(dh sie werden nicht erneut als angezeigt ). Von LeetCode.

Projekt aggregation (hart)

Die Projekte Tabelle enthält drei Spalten: task_id, start_date und end_date. Der Unterschied zwischen end_date und start_date beträgt 1 Tag für jede Zeile in der Tabelle. Wenn Aufgabenenddaten aufeinanderfolgend sind, sind sie Teil desselben Projekts. Projekte überlappen sich nicht.,

Schreiben Sie eine Abfrage, um das Start-und Enddatum jedes Projekts sowie die Anzahl der Tage zurückzugeben, die erforderlich waren. Reihenfolge nach aufsteigender Projektdauer und absteigendem Startdatum im Falle einer Krawatte. Von HackerRank.,

Birthday attendance

Given the following two tables, write a query to return the fraction of students, rounded to two decimal places, who attended school
(attendance = 1) on their birthday. Source.,

Hacker scores

Given the following two tables, write a query to return the hacker ID, name, and total score (the sum of maximum scores for each challenge completed) ordered by descending score, and by ascending hacker ID in the case of score tie., Do not display entries for hackers with a score of zero. From HackerRank.

Rank without RANK (hard)

Write a query to rank scores in the following table without using a window function., Wenn es ein Unentschieden zwischen zwei Partituren gibt, sollten beide den gleichen Rang haben. Nach einem Unentschieden sollte der folgende Rang der nächste aufeinanderfolgende ganzzahlige Wert sein. Von LeetCode.

Kumulative Gehaltssumme

Die folgende Tabelle enthält monatliche Gehaltsinformationen für mehrere Mitarbeiter. Schreiben Sie eine Abfrage, um für jeden Monat die kumulierte Summe des Gehalts eines Mitarbeiters über einen Zeitraum von 3 Monaten mit Ausnahme des letzten Monats zu erhalten., Das Ergebnis sollte nach aufsteigender Mitarbeiter-ID und Monat geordnet werden. Von LeetCode.

Teamwertung

Schreiben Sie eine Abfrage, um die Ergebnisse zurückzugeben von jedem Team in der Tabelle Teams nach allen Spielen in der Tabelle Matches angezeigt. Die Punkte werden wie folgt vergeben: Null Punkte für einen Verlust, ein Punkt für ein Unentschieden und drei Punkte für einen Sieg. Das Ergebnis sollte Teamnamen und Punkte enthalten und nach abnehmenden Punkten geordnet sein., Im Falle eines Unentschiedens nach alphabetisiertem Teamnamen sortieren.,

Kunden, die kein Produkt gekauft haben

Schreiben Sie aus der folgenden Tabelle eine Abfrage, um die ID und den Namen der Kunden anzuzeigen, die Produkte A und B gekauft, aber nicht gekauft haben produkt C, bestellt nach aufsteigender Kunden-ID.,

Median latitude (hard)

Write a query to return the median latitude of weather stations from each state in the following table, rounding to the nearest tenth of a degree. Note that there is no MEDIAN() function in SQL! From HackerRank.,

Maximal getrennte Städte

Aus derselben Tabelle in frage 17, schreiben Sie eine Abfrage, um das am weitesten voneinander getrennte Stadtpaar für jeden Bundesstaat und den entsprechenden Abstand (in Grad, gerundet auf 2 Dezimalstellen) zwischen diesen beiden Städten zurückzugeben. Von HackerRank.,

Zykluszeit

Schreiben Sie eine Abfrage, um den durchschnittlichen Zyklus zurückzugeben zeit über jeden Monat. Zykluszeit ist die Zeit, die zwischen dem Beitritt eines Benutzers und dem Beitritt seiner eingeladenen Personen verstrichen ist. Benutzer, die ohne Einladung beigetreten sind, haben eine Null in der Spalte „Eingeladen von“.,

Drei in einer Reihe

Die Anwesenheitstabelle protokolliert die Anzahl der Personen, die an jedem Tag einer Veranstaltung in einer Menschenmenge gezählt werden. Schreiben Sie eine Abfrage, um eine Tabelle zurückzugeben, die das Datum und die Besucherzahl von Perioden mit hoher Besucherzahl anzeigt, definiert als drei aufeinanderfolgende Einträge (nicht unbedingt aufeinanderfolgende Daten) mit mehr als 100 Besuchern. Von LeetCode.,

Gemeinsam gekauft

Mit den folgenden zwei Tabellen schreiben Sie eine Abfrage, um die Namen und die Kaufhäufigkeit der drei am häufigsten zusammen gekauften Produktpaare zurückzugeben. Die Namen beider Produkte sollten in einer Spalte erscheinen. Quelle.,

Durchschnittlicher Behandlungseffekt (hart)

Berechnen Sie aus der folgenden Tabelle, in der die Ergebnisse einer Studie zusammengefasst sind, den durchschnittlichen Behandlungseffekt sowie die oberen und unteren% Konfidenzintervall. Runden Sie diese Zahlen auf 3 Dezimalstellen.,

Rollsumme Gehalt

Die folgende Tabelle zeigt die monatliche gehalt für einen Mitarbeiter für die ersten neun Monate eines bestimmten Jahres. Schreiben Sie daraus eine Abfrage, um eine Tabelle zurückzugeben, in der für jeden Monat in der ersten Jahreshälfte die fortlaufende Summe des Gehalts des Mitarbeiters für diesen Monat und die folgenden zwei Monate chronologisch sortiert angezeigt wird.,

Taxi cancellation rate

From the given trips and users tables for a taxi service, write a query to return the cancellation rate in the first two days in October, rounded to two decimal places, for trips not involving banned riders or drivers., Von LeetCode.

Retention curve (hard)

Schreiben Sie eine Abfrage, um den Bruchteil der Benutzer zurückzugeben, die eine bestimmte Anzahl von Tagen beibehalten haben (einige Aktivitäten anzeigen). nach dem Beitritt., By convention, users are considered active on their join day (day 0).

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.