Cahide
-
Gesamte Inhalte
10 -
Registriert seit
-
Letzter Besuch
Beiträge erstellt von Cahide
-
-
ist das denn richtig?
-
SELECT count(pres_id)
FROM pres_marriage
WHERE nr_children >0 AND (45-spouse_age)/nr_children <5;
Sry für die Verspätung.
-
Guten Abend,
habe Verständnisprobleme bei folgender Aufgabenstellung:
Select the number of presidents having marriages in which a child was born on an average of minimal once in 5 years (starting with the year the wedding took place in, up to the year the spouse reached age 45).
Tabelle: president_marriage
spouse_name
spouse_age
nr_children
marriage_year
Ich habe die Aufgabe so verstanden, dass ich den SPOUSE_AGE abfragen soll, bei denen die Kinder beginnend mit der Ehe alle 5 Jahren geboren werden.
Jetzt weiss ich aber nicht, wie der Syntax für "alle 5 Jahre" lautet. ich hatte mir überlegt, die Spalten MARIAGE_YEAR und NR_CHILDREN zu verknüpfen, aber leider finde ich keinen Ansatz. Bräuchte bitte Hilfe.
Kann ich eigentlich sagen, MARIAGE_YEAR + 5 WHERE NR_CHILDREN >=0; ?
Mein Ansatz war ja voll daneben, habe schon die Lösung :)
-
Fragen werden mit Fragezeichen beendet. Hab´s vergessen, wird in Zukunft nicht mehr passieren :) .
Genau, der SQL Code sollte meine Lösung repräsentieren, habe aber die Aufgabe schon gelöst:
SELECT COUNT(DISTINCT(state_id_born)) FROM president WHERE birth_year <1900;
Lösung = COUNT 14 ( sollte laut Lösungen richtig sein).
Mein Problem liegt bei der Syntax von Queries ( habe erst gestern angefangen mit SQL(PostgreSQL) zu arbeiten).
Trotzdem Danke für die Lösung. Allerdings möchte ich bitte keine Lösungen, denn ich will es ja auch verstehen.
- 1
-
Das sind meine Hausaufgaben.
Ich will ja keine Lösung. sondern einfach nur Hilfestellung oder Tipps.
Ich habe gedacht, hier kann ich um Hilfe erfragen, deswegen hatte ich ja gefragt, ob ich hier solche fragen stellen darf.
-
Hallo,
könnte mir jemand bei der Aufgabenstellung helfen. ich komm nicht auf die richtige Lösung.
Aufgabenstellung:
How many states brought forth a president born before 1900?
Meine Lösung:
SELECT (name(state)) FROM state INNER JOIN president ON birth_year <= 1900;
-- Table: state
-- DROP TABLE state;CREATE TABLE state(id serial NOT NULL,name character varying(15) NOT NULL,admin_id integer,year_entered integer,CONSTRAINT prim_key_state PRIMARY KEY (id),CONSTRAINT state_fk1 FOREIGN KEY (admin_id)REFERENCES administration (id) MATCH SIMPLEON UPDATE NO ACTION ON DELETE NO ACTION,CONSTRAINT check_year_entered CHECK (year_entered >= 1600 AND year_entered <= 2100))WITH (OIDS=FALSE);ALTER TABLE stateOWNER TO postgres;COMMENT ON TABLE stateIS 'States, added in year and under which president.';-- Table: president-- DROP TABLE president;CREATE TABLE president(id serial NOT NULL,name character varying(20) NOT NULL,birth_year integer,years_served smallint,death_age smallint,party character varying(10),state_id_born integer,CONSTRAINT prim_key_pres PRIMARY KEY (id),CONSTRAINT president_fk1 FOREIGN KEY (state_id_born)REFERENCES state (id) MATCH SIMPLEON UPDATE NO ACTION ON DELETE NO ACTION,CONSTRAINT check_birth_year CHECK (birth_year >= 1600 AND birth_year <= 2100),CONSTRAINT check_death_age CHECK (death_age > 20 OR death_age IS NULL))WITH (OIDS=FALSE);ALTER TABLE presidentOWNER TO postgres;COMMENT ON TABLE presidentIS 'President name, birth year etc.';-- Index: ipres-- DROP INDEX ipres;CREATE INDEX ipresON presidentUSING btree(party COLLATE pg_catalog."default");Eine Andere Frage: darf ich hier überhaupt Fragen zum Thema SQL Abfragen stellen oder bin ich im falschem Film? -
Die werte für
winner = W
l***r = L
und laut Aufgabenlösung soll da MIN 99 raus.
-
Danke meine Frage ist schon beantwortet. Habe erst heute mit SQL angefangen und kenne mich noch nicht so gut aus. Das ist das "SQL Feld" für meine Tabelle.
-- Table: election
-- DROP TABLE election;CREATE TABLE election(election_year integer NOT NULL,candidate character varying(20) NOT NULL,votes integer,winner_loser_indic character(1),CONSTRAINT prim_key_elec PRIMARY KEY (election_year, candidate),CONSTRAINT check_election_year CHECK (election_year >= 1600 AND election_year <= 2100),CONSTRAINT check_votes CHECK (votes > 0),CONSTRAINT check_winner_loser_indic CHECK (winner_loser_indic = 'W'::bpchar OR winner_loser_indic = 'L'::bpchar))WITH (OIDS=FALSE);ALTER TABLE electionOWNER TO postgres;COMMENT ON TABLE electionIS 'Election year, vote count (electoral vote, by delegate), won or lost';Hier ist die Aufgabenstellung:Determine the minimum number of votes for a winner of presidential elections in the 19th century. -
Hallo
ich bin neu hier. also falls ich falsch gepostet habe sry.
Ich hätte eine frage zu SQL Abfrage. Wie sieht die WHERE Methode aus, wenn ich nach den Daten der 20. Jahrhundert abfragen möchte?
WHERE table_name = BETWEEN ‘1901‘ AND ‘1999‘?
SQL Abfragen
in MS SQL Server Forum
Geschrieben
Ah, ok das klingt natürlich viel logischer und sieht auch schöner aus.
Nachdem ich im internet wie b***d gesucht hatte, bin ich zu diesem Ergebnis gekommen und weil die Abfrage die richtige Lösung "ausgespuckt" hatte, wollte ich mich nicht mehr weiter um die Aufgabe kümmern :D
Jetzt bin ich aber an einer Aufgabe dran, wo ich Subqueries ohne Join benutzen soll.. :confused: :confused: :confused:
Aufgabe:
Determine name and years served of the President, who obtained the greatest number of votes ever.
TABALLE president:
id
name
birth_year
years_served
death_age
party
state_id_born
TABELLE election:
election_year
candidate
votes
winner_loser_indic
Meine Lösungsansatz:
SELECT p.name, p.years_served