MySQL DELETE -käskyä käytetään poistamaan MySQL-taulukosta tietueita, joita ei enää tarvita tietokannassa. Tämä MySQL-kysely poistaa koko rivin taulukosta ja tuottaa poistettujen rivien määrän . Sen avulla voimme myös poistaa useamman kuin yhden tietueen taulukosta yhden kyselyn aikana, mikä on hyödyllistä, kun taulukosta poistetaan suuri määrä tietueita. Poista-lauseketta käyttämällä voimme myös poistaa tietoja ehtojen perusteella.
Kun olemme poistaneet tietueet tällä kyselyllä, emme voi palauttaa sitä . Siksi ennen tietueiden poistamista taulukosta on suositeltavaa luo varmuuskopio tietokannastasi . Tietokannan varmuuskopioiden avulla voimme palauttaa tiedot aina, kun tarvitsemme niitä tulevaisuudessa.
tiikeri verrattuna leijonaan
Syntaksi:
Seuraavassa on syntaksi, joka havainnollistaa DELETE-käskyn käyttöä:
DELETE FROM table_name WHERE condition;
Yllä olevassa lauseessa meidän on ensin määritettävä taulukon nimi, josta haluamme poistaa tiedot. Toiseksi meidän on määritettävä tietueiden poistamisen ehto WHERE-lauseessa, joka on valinnainen. Jos jätämme WHERE-lauseen pois käskystä, tämä kysely poistaa kokonaisia tietueita tietokantataulukosta.
Jos haluamme poistaa tietueita useista taulukoista yhdellä DELETE-kyselyllä, meidän on lisättävä LIITTYÄ SEURAAN lauseke DELETE-käskyn kanssa.
Jos haluamme poistaa kaikki tietueet taulukosta tietämättä poistettujen rivien määrää, meidän on käytettävä TYPISTÄ TAULU lausunto, joka antaa paremman suorituskyvyn.
Ymmärrämme kuinka DELETE-käsky toimii MySQL erilaisten esimerkkien kautta.
Esimerkkejä MySQL DELETE -lausekkeesta
Tässä aiomme käyttää 'Työntekijät' ja 'Maksu' taulukoita DELETE-käskyn esittelyyn. Oletetaan, että Työntekijät- ja Palkkataulukot sisältävät seuraavat tiedot:
Jos haluamme poistaa työntekijän, jonka emp_id on 107 , meidän tulee käyttää DELETE-käskyä WHERE-lauseen kanssa. Katso alla oleva kysely:
mysql> DELETE FROM Employees WHERE emp_id=107;
Kyselyn suorittamisen jälkeen se palauttaa tulosteen alla olevan kuvan mukaisesti. Kun tietue on poistettu, tarkista taulukko SELECT-käskyllä:
npm puhdista välimuisti
Jos haluamme poistaa kaikki tietueet taulukosta, WHERE-lausetta ei tarvitse käyttää DELETE-käskyn kanssa. Katso alla oleva koodi ja tulos:
Yllä olevassa tulosteessa voimme nähdä, että kun kaikki rivit on poistettu, Työntekijät-taulukko on tyhjä. Se tarkoittaa, että valitussa taulukossa ei ole tietueita.
MySQL DELETE- ja LIMIT-lauseke
MySQL Limit -lauseketta käytetään rajoittamaan rivien määrää tulosjoukosta sen sijaan, että noudettaisiin taulukon kaikki tietueet. Joskus haluamme rajoittaa taulukosta poistettavien rivien määrää; siinä tapauksessa käytämme RAJA lauseke seuraavasti:
DELETE FROM table_name WHERE condition ORDER BY colm1, colm2, ... LIMIT row_count;
On huomattava, että MySQL-taulukon rivien järjestys on määrittelemätön. Siksi meidän tulee aina käyttää TILAA lauseke, kun käytät LIMIT-lausetta.
Esimerkiksi , seuraava kysely lajittelee ensin työntekijät nimien mukaan aakkosjärjestykseen ja poistaa kolme ensimmäistä työntekijää taulukosta:
mysql> DELETE FROM Employees ORDER BY name LIMIT 3;
Se antaa alla olevan tulosteen:
MySQL DELETE- ja JOIN-lauseke
JOIN-lausetta käytetään kahden tai useamman taulukon lisäämiseen MySQL:ssä. Lisäämme JOIN-lauseen DELETE-käskyn kanssa aina, kun haluamme poistaa tietueita useista taulukoista yhden kyselyn sisällä. Katso alla oleva kysely:
mysql> DELETE Employees, Payment FROM Employees INNER JOIN Payment ON Employees.emp_id = Payment.emp_id WHERE Employees.emp_id = 102;
Lähtö:
Suorituksen jälkeen näemme tuloksen alla olevan kuvan mukaisesti:
Jos haluat lukea lisätietoja DELETE-lauseesta JOIN-lausekkeen kanssa, Klikkaa tästä .