Met vs Where Clause
Machines, in het bijzonder computers, zijn ontworpen als een middel voor menselijke communicatie. Als zodanig zijn ze zo gemaakt dat hun gedrag wordt gecontroleerd door programma's die kunstmatige taal gebruiken. Natuurlijke taal zoals Engels kan niet door computers worden gebruikt, omdat het vocabulaire te groot is en steeds verandert.
De computertaal moet nauwkeurig en precies zijn, omdat computers geen gezond verstand hebben, dus is het gebaseerd op een algoritme dat gegevens kan berekenen en verwerken en computers ook kan laten redeneren. Er zijn verschillende computertalen gemaakt. Elk van hen heeft twee componenten, de syntaxis of vorm en de semantiek of betekenis.
Er zijn assembly-, concurrent-, dataflow-, definitional-, functionele-, intermediate-, logic-, procedural- en query-talen. Query-talen worden gebruikt om navraag te doen bij databases en informatiesystemen. Een dergelijke taal is de Structured Query Language (SQL).
SQL is een database-computertaal met de volgende functies: gegevensinvoeging, update en verwijdering, toegang en controle, en schemacontrole en wijziging. Het is verder onderverdeeld in de volgende elementen:
Uitdrukkingen
predikaten
queries
verklaringen
clausules
SQL heeft de volgende clausules:
Beperkingsclausule
Voor de Update-clausule
Van clausule
Groeps-BY-clausule
Bestelling per clausule
Waar Current of clausule
Een clausule hebben
Where-clausule
De clausule having wordt altijd met de group by-clausule gebruikt. Het wordt gebruikt om records te filteren die door een groep worden geretourneerd op basis van een predicaat. De resultaten van een group by-clausule worden beperkt door de clausule having te gebruiken en alleen de opgegeven rijen te selecteren.
Het is vergelijkbaar met een where-component en een query kan zowel een hebbende als een where-component hebben. In dit geval wordt eerst de where-component gebruikt en nadat individuele rijen zijn gegroepeerd, wordt de clausule having gebruikt. De clausule having heeft betrekking op de groep als geheel, terwijl de where-clausule op afzonderlijke rijen van toepassing is.
De where-component wordt gebruikt om rijen te selecteren die in de query moeten worden opgenomen en gebruikt een vergelijkingspredicaat en het sluit rijen uit die niet zijn geëvalueerd door het predikaat van de vergelijking om waar te zijn. Het wordt gebruikt in omstandigheden die verwijzen naar verzamelfuncties en om afzonderlijke rijen te selecteren in een tabel die is opgegeven in een from-component.
Zonder dit zou de resulterende reeks rijen erg groot worden. Het gebruikt de volgende operatoren: = of gelijk, of niet gelijk,> of groter dan, = of groter dan of gelijk aan, <= or less than or equal, BETWEEN, LIKE, and IN.
Samenvatting
1.De clausule having wordt gebruikt in rijen die zijn gegroepeerd terwijl de where-component in afzonderlijke rijen wordt gebruikt.
2.Wanneer ze samen worden gebruikt, wordt eerst de where-component gebruikt om te selecteren welke rijen moeten worden gegroepeerd, waarna de clausule having wordt gebruikt.
3.De clausule having wordt gebruikt met een group by-clausule, terwijl de where-component wordt aangeklaagd in rijen die zijn opgegeven met een from-clausule.