SQL Lite Abfrage
@Padidem: aber bestimmt nicht Musterlösungen. Wenn Du fremde Lösungen als Deine eigene ausgibst, dann wäre das ein Plagiat und eine Urheberrechtsverletzung. Wenn Du Dir damit eine Leistung erschleichst, sogar Betrug.
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
Ich glaube aber nicht, dass Dir jemand solchen Code schreiben wird... dazu sind da zu viele Abhängigkeiten drin und es ist nicht so wirklich spannend... außer vielleicht in anderen Sprachen 

encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
assert encoding_kapiert
Wobei „in anderen Sprachen” ja der Haupteil wohl auch in SQL ausgedrückt werden würde. Obwohl, naja dieses LINQ oder wie das heisst, bei C#… 

- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
LINQ2SQL ist leider "deprecated" 
Aber LINQ an sich wird ja in den diversen .NET-ORMs dennoch benutzt bzw. nutzbar gemacht

Aber LINQ an sich wird ja in den diversen .NET-ORMs dennoch benutzt bzw. nutzbar gemacht

encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
assert encoding_kapiert
ja schon aber wie genau :
eigentlich müsste die Rechnung ja 80 650000 - 80613 = 80 569 387 lauten aber Python gibt mir immer ein anderes Ergebnis aus. Also wie kombiniere ich die Ausdrücke innerhalb einer SELECT Anweisung (richtige Klammersetzung etc.) damit das gleiche rauskommt?
Code: Alles auswählen
cursor.execute('''SELECT einwohner_mio * 1000000 FROM laender_info ''').fetchall()
Out[15]:
[(652000.0,),
(2000000.0,),
(3000000.0,),
(4000000.0,),
(2000000.0,),
(998000.0,),
(12000000.0,),
(3000000.0,),
(2000000.0,),
(4000000.0,),
(6000000.0,),
(2000000.0,),
(2000000.0,),
(18000000.0,),
(11000000.0,),
(8000000.0,)]
cursor.execute('''SELECT sum (einwohner_mio * 1000000) FROM laender_info ''').fetchall()
Out[16]: [(80650000.0,)]
cursor.execute('''SELECT insgesamt FROM migrationshintergrund_2013 ''').fetchall()
Out[17]:
[(10599,),
(12556,),
(3396,),
(2448,),
(655,),
(1744,),
(6029,),
(1598,),
(7784,),
(17553,),
(3991,),
(992,),
(4044,),
(2250,),
(2810,),
(2164,)]
cursor.execute('''SELECT sum(insgesamt) FROM migrationshintergrund_2013 ''').fetchall()
Out[18]: [(80613,)]
naja.... in der Aufgabenstellung ist folgender Hinweis enthalten:
Die absolute Differenz der Einwohnerzahl in der Tabelle laender info und der Einwohnerzahl(
gesamt) in der Tabelle migrationshintergrund 2013; Hinweis: SQLite Funktionen
Die absolute Differenz der Einwohnerzahl in der Tabelle laender info und der Einwohnerzahl(
gesamt) in der Tabelle migrationshintergrund 2013; Hinweis: SQLite Funktionen
@Padidem: Der Hinweis deutet auf eine andere Funktion als ``SUM()`` hin. Nehmen wir mal an a=3 und b=5, wie lautet die absolute Differenz davon? Und wie sieht es bei a=5 und b=3 aus? Wie sähe die Formel für die absolute Differenz für ein beliebiges a und b aus?