2017-01-25 5 views
0

Ich habe folgendes SchemaVerständnis Schemen und Abfragen

Persons (SSN, Name, HouseId, ApartmentNumber, Salary)  
Houses (HouseID, HouseAddress, ApartmentCount, Color) 
Landlords (LandlordID, OwnerSSN, LandlordAddress) 
Ownerships (LandlordID, HouseID, PurchaseDate, PropertyTax) 
Tenants (HouseID, ApartmentNumber, LeaseTenantSSN, LeaseStartDate, LeaseExpirationDate, 
Rent, LastRentPaidDate, RentOverdue)  

Finden Sie die Namen aller Personen, die eine Wohnung, deren Miete Leasing ist höher als die Hälfte dieses Gehalts einer Person. Ich habe eine harte Zeit mit den Engländern. Bedeutet das, dass ich alle Leute finden muss, die Vermieter und Mieter sind und was sie für Miete zahlen, ist mehr als die Hälfte ihres Gehalts?

+0

einige Beispieltabellendaten hinzufügen und das erwartete Ergebnis. Zeigen Sie uns auch Ihren aktuellen Anfrageversuch! (Hausaufgaben?) – jarlh

Antwort

1

Es klingt wie eine einfache Abfrage:

select t.leaseTenantSSN from Tenants t join Person p on 
t.LeaseTenantSSN=p.SSN where t.Rent > p.Salary*.5; 
+0

Warum kann ich nicht stattdessen Houseid verwenden? – TheMathNoob

+0

Gehalt ist in Personen Tabelle, Miete ist in Mieter Tabelle. Es gibt eine Beziehung zwischen diesen beiden Tabellen, die keine houseId beinhaltet. Deshalb brauchen Sie für die in der Frage angegebene Anforderung keine Haus-ID. – kwalski

+0

Ist ein Pachtmieter ein Vermieter? – TheMathNoob