Monday, November 18, 2019

SQL untuk Pemula Bagian 4 (Terakhir)

SQL untuk Pemula Bagian 4 (Terakhir)

SQL untuk Pemula Bagian 4 (Terakhir)
Monday, November 18, 2019
Selamat malam pembaca, topik kali ini masih melanjutkan sql untuk pemula bagian terakhir. SQL ini akan membahas mengenai:

  • VARIABLE
  • PROCEDURE
  • FUNCTION
  • TRIGERRED
  • IF
  • LOOP

Karena besok saya ada test mengenai sql saya harus menyelesaikan bagian terakhir ini. Doain lancar yaww. Query sql ini jarang digunakan tapi kalok bisa gak usah buat sql yang ribet lagi tinggal pakek procedure atau function panggil bisa deh.

SQL VARIABEL


Variabel dalam mysql hanya menggunaka 

set @a = 1;

Jika kamu gak bisa mungkin versinya beda. Coba pakek ini

declare @a int default 0;
set @a = 1;


SQL Procedure


Seperti pada bahasa pemrograman sql juga memiliki procedure. Bagaimana kita membuat procedure dalam mysql silakan lihat dibawah ini:

delimiter ..

create procedure getAnimeId(in animeId int)
begin
select * from anime where id = animeId;
end ..

delimiter ;

delimiter digunakan untuk mengubah ; yang biasanya untuk memberitahu bahwa query selesai. Disini kita mengubahnya menjadi .. . Cara untuk memanggil procedure tersebut adalah


perlu kalian ketahui in didalam kurung dapat ditambahin juga bisa digunakan keluaran dengan out atau juga bisa digunakan untuk inout.

Gak ngerti ? tanyain di kolom komentar ya. Tp gue kasih 1 contoh deh.

create procedure getCreatorId(in creatorid int, out total int)
begin 
select count(*) into total from anime where idcreator = creatorid;
end ..


SQL Function & IF


function hampir mirip dengan procedure, procedure gak memiliki return sedangkan function memiliki return. Contohnya.

delimiter meow

create function genre(creatorid int) returns varchar(50) not deterministic
begin 
declare gen varchar(50);

if creatorid = 1 then set gen = "Romance bingit";
elseif creatorid = 2 then set gen = "Omae wa mo sindeiru";
end if;

return(gen);
end meow

delimiter ;

Hasilnya:

Berbeda dengan procedure. Pemanggilannya bisa dilakukan dengan di dalam query select.

SQL Trigger


Contohnya dibawah ini

DELIMITER //

CREATE TRIGGER addOrderDetails
AFTER INSERT ON orderdetails
FOR EACH ROW
BEGIN
UPDATE products
SET quantityInStock = quantityInStock - NEW.quantityOrdered
WHERE products.productCode = NEW.productCode;

END //
DELIMITER ;

selain After ada before bedanya cuman dijalankan sebelum dan sesudah sama persis kayak artinya.

SQL LOOPING


Create procedure updateSalary()
begin
    declare done int default 0;
    declare current_dnum int;
    declare dnumcur cursor for select dnumber from deptsal;
    declare continue handler for not found set done = 1;
    
    open dnumcur;
    
    repeat
       fetch dnumcur into current_dnum;
       update deptsal
       set totalsalary = (select sum(salary) from employee
                           where dno = current_dnum    )
       where dnumber = current_dnum;
    until done
    end repeat;
    
    close dnumcur;
End


Udahlah lagi males gue. Capek. Kalok gak tahu bisa di rembukin di komentar gan :v. omae wa mou shindeiru ? NANI .... xD

++ BONUS ++


Berkomentarlah secara bijak.
EmoticonEmoticon