sql >> Databasteknik >  >> RDS >> Oracle

hur man skriver sql-frågor

Vad är SQL?

Relational Database Management System (RDBMS) innehåller många tabeller. Dessa tabeller är den grundläggande lagringen i databasen. Tabeller innehåller information om något i den verkliga världen, till exempel kunder, anställda, avd. Tabeller i databasen innehåller noll till många rader.

SQL som står för "Structured Query Language" som uttalas som "SQL" eller "sequel . SQL är ett frågespråk som används för att komma åt och ändra information i en eller flera datatabeller och rader i en databas.

SQL har följande fördelar
1) Effektivt
2) Enkla att skriva
3) Funktionellt kompletta eftersom de kan användas för att fullständigt hämta  och manipulera  data i tabellerna

Relaterat :Oracle sql-avkodningsbearbetning

Det är en ANSI/ISO-standard. Det har blivit ett standardspråk som används av de flesta relationsdatabashanteringssystem (RDBMS). Några av RDBMS-systemen är:Oracle, Microsoft SQL-server, Sybase, MySQL, Postgres, teradata etc.

Några av Sql-grunderna som kommer att hjälpa till att skriva SQL-frågor

Välj :Den används för att hämta data från RDBMS
Infoga :Den används för att infoga nya rader i RDBMS
Uppdatera :Den används för att uppdatera raderna i RDBMS

Det kan sägas att , SQL är ett icke-procedurmässigt, engelska-liknande språk som bearbetar data i grupper av poster snarare än en post åt gången.

Hur man skriver SQL-frågor

1) Vi måste först förstå kravet, dvs. vilken kolumn som krävs, vilka tabeller som kommer att användas etc.
2) Alla RDBMS har samma SQL-format men få saker i syntaxen kan skilja sig. Så vi bör hänvisa till den specifika databasmanualen till lär dig mer om det
3) Om vi ​​bara hämtar data, då är select det första nyckelordet att använda
a) Vi måste beskriva tabellen där data måste hämtas
b) Vi väljer kolumnen enligt kravet
c) Om något filtervillkor finns där, bör vi ange det
d)om  flera tabeller finns där, måste kopplingsvillkor användas

e) Filtrering kan göras med where-sats

g) Order by kan användas för att presentera data i stigande eller fallande ordning

h) grupp för funktion kan användas för att hitta summa, medelvärde etc.

Relaterat: Oracle sql handledning:Grundläggande SQL-sats

Exempel på SQL-frågor

1)

select emp_id,sal from emp where sal > 10000;

Här är emp_id,sal kolumnen som väljs
emp är tabellen
där sal> 10000 är filtervillkoret

2) Om vi ​​manipulerar data i tabellen måste uppdatering eller infogning användas

Exempel

update emp set sal=120000 where emp_id=2;

Här

emp är tabellen
uppdatering är nyckelordet för manipulation
set  är nyckelordet som används i samband med uppdatering
sal=12000 är  manipulationen
där emp_id=2 är filtervillkoret

infoga i emp ('emp_name','emp_id','dept_no','salary') värden ('Tom hanks', 569797,45,1000000);

Här

vi infogar i emp-tabellen.

3) Om flera tabeller är inblandade kan vi behöva anslutningsvillkor

Example

select emp_name,emp_no,dept_no,dept_name from emp ,dept where emp.dept_no=dept.dept_no;

här

Emp och dept är tabeller

Vi väljer poster där dept_no är lika med båda tabellerna. Det är ett exempel på inre join

Dessa är olika typer av joins tillgängliga i SQL −

INNER JOIN − returnerar rader när det finns en matchning i båda tabellerna.

LEFT JOIN − returnerar alla rader från den vänstra tabellen, även om det inte finns några matchningar i den högra tabellen.

RIGHT JOIN − returnerar alla rader från den högra tabellen, även om det inte finns några matchningar i den vänstra tabellen.

FULL JOIN − returnerar rader när det finns en matchning i en av tabellerna.

SELF JOIN – används för att sammanfoga en tabell med sig själv som om tabellen vore två tabeller, vilket tillfälligt byter namn på minst en tabell i SQL-satsen.

CARTESIAN JOIN − returnerar den kartesiska produkten av uppsättningarna av poster från de två eller flera sammanfogade tabellerna.

4) Om vi ​​behöver hämta datagrupp efter någon kolumn, används grupp efter

SELECT dept, SUM (salary)  FROM employee  GROUP BY dept;

Här summerar vi lönerna för alla anställda avd.

5) Om du vill sortera anställningstabellen efter lön för den anställde, skulle SQL-frågan vara.

SELECT name, salary FROM emp ORDER BY salary;

6) om vi vill ta bort några rader, skulle SQL-frågan göra det

delete from emp where emp_id='798696';

  1. Fel vid anslutning till postgresql med sqlalchemy

  2. MySQL IN-operatörens prestanda på (stort?) antal värden

  3. Hur skapar man ett unikt index på en NULL-kolumn?

  4. Hur man installerar MySQL på macOS