sql >> Database teknologi >  >> RDS >> Database

SQL Truncate

Denne kommando sletter alle poster fra tabellen. Truncate er en DDL-kommando.Syntaks:
TRUNCATE tabel tabelnavn;
Eksempel:
Trunker tabellærer;

BEstil efter

ORDER BY-sætningen arrangerer tabellen eller kolonnen i stigende eller faldende rækkefølge. Som standard er det stigende rækkefølge. 'ASC' bruges til at angive stigende rækkefølge og 'DESC' bruges til at angive faldende rækkefølge. For at vise de resulterende poster tilfældigt Rand()-metoden brugt i MySQL.Eksempel:Sorter efter i stigende rækkefølge
vælg *fra lærerrækkefølge efter lærernavn;ellervælg *fra lærerrækkefølge efter lærernavn asc;
Her er output det samme.Eksempel:
vælg *fra lærerorden efter lærernavn desc;
Eksempel:
Vælg Teacher_idfrom teacher order by rand();
LIMIT Limit nøgleord bruges til at hente et begrænset antal poster. Limit kan bruges med én parameter eller to parametre.
  • Begræns [én parameter]
Denne parameter bestemmer antallet af poster, der skal vises.
  • Grænse [første parameter, anden parameter]
Her angiver den første parameter antallet af poster, der skal springes over, og den anden parameter angiver antallet af poster, der skal vises.Eksempel:
Vælg *fra lærergrænse 5;
Eksempel:
Vælg *fra lærergrænse 2,3;

GRUPPER EFTER

GROUP BY-sætningen bruges til at samle rækker, der har samme værdier. Hovedsageligt GROUP BY-klausul, der bruges med aggregerede funktioner til at producere en oversigtsrapport fra databasen.
vælg dept_name, count(*) from teachergroup by dept_name;

HAR KLAUSUL

Have-klausulen bruges i forbindelse med aggregerede funktioner i stedet for where-klausulen. Det betyder ikke, hvor klausul og aggregerede funktioner ikke er mulige i samme forespørgsel. Vi kan bruge where-klausul og aggregeret funktion i samme forespørgsel.Bemærk: At have klausul gælder på gruppe af poster, på den anden side hvor klausul anvendes på hver enkelt post. Hvor og have-sætning kan bruges i samme forespørgsel.Syntaks:
Vælg funktionsnavn(kolonne_navn)Fra tabelnavnGrupper efter (kolonnenavn)Har (tilstand)
Eksempel:
vælg count(teacher_id) fra teachergroup ved at dept_namehaving dept_name='it';
Vælg dept_name, count(teacher_id) from teachergroup by dept_namehaving count(teacher_id)> før>  

SQL JOINS

Afdelingsbord Tabel for lærere Eksempel: Skriv en forespørgsel for at vise afdelingens navn med deres leder, og hvor mange lærere der arbejder i den respektive afdeling.
select department.dept_name,dept_head,count(teacher_name)from department join teacheron department.dept_name=teacher.dept_namegroup by(dept_name);
TABEL A og TABEL B JOIN Join returnerer matchværdierne fra begge tabeller med respektive ON-tilstand.
Vælg *fra A JOIN BON A.no=B.no;
RET JOIN SQL Right Join returnerer også alle posterne fra højre tabel og matchede værdier. Hvis der ikke er matchende værdier i en anden tabel, vil den returnere null.
Vælg *Fra A  HØJRE JOIN BON A.no=B.no;
LEFT JOIN SQL left join returnerer alle poster fra venstre tabel og matchede værdier. Hvis der ikke er matchende værdier i en anden tabel, vil den returnere null.
Vælg *fra A LEFT JOIN BON A.no=B.no;

SE

View er det samme som en tabel i en database. Bord er en fysisk enhed, mens visning ikke er det. View er en virtuel tabel baseret på resultatsæt af SQL-forespørgsler. Brugeren kan oprette visning ved at skrive SQL-forespørgsler ved hjælp af en eller flere tabeller, hvilket betyder, at visningen kan indeholde kolonner/felter/attributter fra forskellige tabeller.Syntaks:
opret visning view_name asSelect column1,column2,….Fra tabelnavnHvor betingelse;
Eksempel:
Opret visning view_student asSelect student_id,student_name,dept_nameFrom studentWhere student_id<10;
vælg *from view_student;
Følgende outputskærm viser, at en bruger kan udføre SQL-funktioner på visning, når de viste data er fra en enkelt tabel. Det er også det samme i tilfælde af WHERE og JOIN. # UDSKIFT VISNING I en erstatningsvisning kan brugeren ændre visningens navn eller indholdet af visningen ved at ændre forespørgslens indvendige visning.Syntaks:
Opret eller erstat visning view_name asSelect column1,column2,……From studentWhere condition;
Eksempel:
Opret eller erstat view view_student asSelect student_id,student_name,dept_name,classyearFra studentWhere student_id between 15 and 35;
# DROP VISNING Brugeren kan droppe visningen ved hjælp af kommandoen DROP VIEW.Syntaks:
Drop viewview_name;
Eksempel:
Drop viewview_student;
NEDET FORESPØRGSEL Forespørgsel i en anden forespørgsel kaldet indlejret forespørgsel. Brugeren kan henvise dem til ydre forespørgsel og indre forespørgsel. Indre forespørgsel navngivet som underforespørgsel . Underforespørgsel kan resultere i output med en enkelt række eller output med flere rækker. Brugeren kan sætte underforespørgsel foran select eller where-sætning.Syntaks:
Vælg kolonnerFra tabelnavnHvor betingelse I( vælg kolonnenavnFra tabelnavnHvor betingelse);Vælg kolonnenavn =(vælg kolonnenavnFra tabelnavnHvor betingelse),kolonnerFra tabelnavnHvor betingelse;
Eksempel: Q1 Vis lærernavne fra 'IT'-afdelingen, hvis løn er højere end gennemsnitslønnen for 'IT'-afdelingen.
Vælg lærernavnFra lærerHvor løn>(vælg gennemsnit(løn)Fra lærer, hvor afd.navn='IT');
SQL SEKVENS I MySQL bruges AUTO_INCREMENT nøgleord til at generere en sekvens. Det genererer sekvens af numeriske værdier, som bruges til at identificere hver post unikt. Når dette anvendes på kolonne, øger det kolonnens værdi med 1, mens der indsættes en ny post i tabellen. Auto_increment-feltet skal være en nøgle.Syntaks:
Opret tabel tabelnavn(kolonne1 datatype AUTO_INCREMENT,kolonne2 datatype,...,kolonne1 Primær nøgle);
Eksempel:
opret tabeleksempler(sample_id int auto_increment primærnøgle,sample_name varchar(20),qunity int,price float);

Anvend AUTO_INCREMENT efter tabeloprettelse

Syntaks:
Alter table table_namemodify columncolmn_name datatype primær nøgle auto_increment;
 Eksempel:
ændre tabel elevmodify columnstudent_id int auto_increment;

INDEKS

Brugeren kan oprette indeks. Data hentes meget hurtigt fra databasen ved hjælp af indeks. Bruger kan ikke se indeks. Indeks bruges kun i søge- eller forespørgselsformål.Syntaks
Opret Index index_nameOn table_name (column_name);
Eksempel:
opret indeks stud_indexon student (student_name);

SLIP INDEKS

Syntaks:
Ændre tabel tabelnavnDrop indeks indeksnavn;
Eksempel:
ændre tabel studentdrop index stud_index;

Eksempler

Q1 Find ud af højeste løn fra lærertabellen på lærer_id-basis. Svar: vælg lærer_id fra lærerrækkefølge efter lærer_id desc grænse 1;// hvor mange optager der skal vises eller
vælg max(teacher_id) fra læreren;
Q2 Find ud af den næsthøjeste løn fra lærertabellen på teacher_id-basis. Svar :vælg lærer_id fra lærerrækkefølge efter lærer_id desc grænse 1,1; // spring 1 post over, vis 1 postQ3 Find ud af den tredje højeste løn fra lærertabellen på teacher_id basis. Svar: vælg lærer_id fra lærerordre efter lærer_id desc grænse 2,1;Q3 Find ud af den n højeste løn fra lærertabellen på lærer_id basis. Svar: vælg lærer_id fra lærerrækkefølge efter lærer_id desc grænse n-1,1;


  1. Datatypepræference i SQL Server

  2. Lagring af filer i SQL-database ved hjælp af FILESTREAM – Del 2

  3. Sådan opretter du flere en til ens

  4. Hvordan redigerer jeg en tabel for at aktivere CASCADE DELETE?