DML Başlangıç
Bu yazı ile ilgili SirketDB dosyasını indirip Restore etmeyi unutmayınız.
https://www.fethimurat.com/blog/wp-content/uploads/2010/08/SirketDB.zip
-- dml (data manuplation language)
-- insert => ekle
-- delete => siler
-- upate => güncelle
-- select => okumak
-- departman ekleyelim (yorum satırı)
insert into Departmanlar(Departman)
values('Departman1')
-- personel ekleyelim
insert into Personeller
(Ad,Soyad,KayitTarihi,Maas,DepartmanID)
values('Omer','Behçet','10.10.2010',47.54,1)
select * from Personeller
-- sadece ad ve soyad kaydedelim
insert into Personeller(Soyad,Ad)
values ('kabze','hasan')
-- maas değeri olmayan kayıtların
-- maaşını 3 yapalım(değer ataması)
-- veri güncellemesi
update Personeller set Maas=3
where Maas is null
-- bugün başlayıp yarın bitecek ve tanımı "yalandan proje" olacak bir proje kaydı ekleyiniz...
-- lütfen projeler tablosuna üstteki istek için bir insert yazınız
insert into Projeler
values('yalandan proje',GETDATE(),DATEADD(DD,1,GETDATE()))
select * from Projeler
-- ProjeID değeri 1 olan projenin tanımını "BilgeAdam projesi" olarak değiştirin
update Projeler
set ProjeTanimi='BilgeAdam Projesi'
where ProjeID=1
select * from Personeller
-- Personeller tablosunda herhangi bir departmana bağlı olmayan personelleri 1 nolü departmana bağlayınız
update Personeller
set DepartmanID=1
where DepartmanID is null
-- Ad değeri Om ile başlayan personelleri silin
-- format : delete from tablo (varsa) where Falan=deger
delete from Personeller
where Ad like 'om%'
select * from Projeler
select * from Personeller
-- Soyadı ka ile başlayan personelin adını getirelm
select Ad from Personeller
where Soyad like 'ka%'
-- departmanID si 1 olan personelin adını ve soyadını getirin
select Ad,soyad from Personeller
where DepartmanID=1
-- Maaşı 500 ile 3000 arasında olan personellerin Adını ve soyadını tek kolon olarak ve maaşını getirin
select Ad+' '+Soyad, Maas from Personeller
--where Maas>500 and Maas<3000
where Maas between 500 and 3000
-- personeller tablosunda adının 2. harfi a olan personellerin adını ve personelID sini getirin
select
cast(PersonelID as varchar(3))+' '+Ad as 'Personel'
from Personeller
where Ad like '_a%'
-- Maaşı 10000 den büyük olan ve departmanID değeri 3 olan personelin adını maaşını ve departmanID değerini getirin
select Ad,Maas,DepartmanID from Personeller
where Maas>10000 and DepartmanID=3
-- yazilim departmanındaki çalışanların adını ve soyadını listeleyin
select Ad,Soyad from Personeller
where DepartmanID=
(
select DepartmanID from Departmanlar
where Departman ='Yazilim'
)
-- Proje Tanımım Bil ile başlayan projeye ismi il ile başlayan personeli atayın
insert into Personel_Proje
values
(
(
select ProjeID from Projeler where
ProjeTanimi like 'Bil%'
)
,
(
select PersonelID from Personeller where
Ad like 'il%'
)
)
-- Proje tanımı içinde "ada" geçen projelerin proje tanımlarını ve başlangıc tarihlerini ve toplam kaç gün sürdüğünü(datediff) gösterin
select ProjeTanimi,BaslangicTarihi,BitisTarihi,DATEDIFF(dd,BaslangicTarihi,BitisTarihi)
from Projeler