12 Ekim 2014, 06:59 | #1 | |
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0) | Oracle SQL Komutları ORACLE - Temel SQL Komutları (+) (+), Birleştirme yapılan tablolardan ikinci tabloda birinci tablodaki her kaydın karşılığı olmazsa, karşılığı olmayan kayıtlar sql sonucunda sadece olmayan alanlar değil bilakis kayıt hiç gelmez. Bunun önlemi dış birleştirmedir. Dış birleştirme işlemi, kayıtları eksik olan tablonun şart tarafına "(+)" işareti konularak yapılır. SELECT * FROM PERSONEL, UNVAN WHERE PERSONEL.UNVANKEY(+) = UNVAN.UN_KEY Bu örnekte, 3 tane kayıt gelmektedir, yani UNVAN tablosunda sadece UN_KEY=1 olan sadece bir kayıt var. Diğer tablo da ise (PERSONEL) UNVANKEY'i birinci tabloda ki UN_KEY=1' e eşit olan kayıtlar sorgu sonucu gelir. Not: Biz null değere sahip olanları da birleştirmek istersek eksik olan tablonun yanına (+) işareti eklenir. PERSONEL.PR_KEY PERSONEL.SICIL PERSONEL.UNVANKEY UNVAN.UN_AD UNVAN.SERVISKEY 1 XI 1 6 50 1 1 1 54 1212541 1 1 ABS ABS, N sayısının pozitif halini sonuç olarak döndürür. SELECT ABS(-1), ABS(1) FROM HASTA Bu örnekte olduğu gibi bir sayıyı (pozitif yada negatif) pozitif bir sayıya çevirir. ABS(-1) ABS(1) 1 1 1 1 1 1 COS COS(N), N sayısının kosinüsünü sonuç olarak döndürür. SELECT COS(-1), COS(0), COS(1) FROM HASTA Bu örnekte olduğu gibi bir sayıyı (pozitif yada negatif) kosinüsüne çevirir. ACOS(1) ACOS(0) ACOS(-1) 1 1 1 1 1 1 1 1 1 ACOS ACOS(N), N sayısının ark kosinüsünü sonuç olarak döndürür. SELECT ACOS(-1), ACOS(0), ACOS(1) FROM HASTA Bu örnekte olduğu gibi bir sayıyı (pozitif yada negatif) ark kosinüsüne çevirir. ACOS(-1) ACOS(0) ACOS(1) 3 2 3 2 3 2 ADD_MONTHS ADD_MONTHS, ADD_MONTHS(t,n) t tarihini, n ay eklenmis olarak sonuçta döndürür. SELECT ADD_MONTHS(TO_DATE('31.01.2001'),1) FROM HASTA Bu örnekte olduğu gibi t (31.01.2001) tarihine n (1) ay ekleyerek sonuca yansıtır. ADD_MONTHS(TO_DATE('31.01.2001') 28.02.2001 28.02.2001 28.02.2001 ALL ALL, Tablolarda ki bütün alanların listeleneceğini (çift olsa dahi) gösterir. SELECT HS_KEY, HS_AD, CINSIYET, ISLEMSAYI FROM HASTA WHERE ISLEMSAYI>ALL(SELECT DISTINCT HS_KEY FROM HASTA WHERE TELEKOMBOLUM='BASIN YAYIN') All komutu ile bu örnekte basın yayın (BASIN YAYIN) bölümünde çalışan her hastadan daha fazla işlem sayısı (ISLEMSAYI) olan hastanın hs_ad, hs_soyad, cinsiyet, işlemsayi alanları listelenir. Not: Bu örnekteki " her hasta " ifadesi bize ALL kullanılacağını gösterir. HS_KEY HS_AD CINSIYET ISLEMSAYI 93 ORHAN E 13 42017 TÜRKAN K 4 42029 ÖZLEM K 5 ALL_OBJECTS ALL_OBJECTS, Kullanıcının erişebileceği bütün nesneler hakkında bilgi içeren görüntüdür. ALTER ALTER, Tabloya sütün / tablo kısıtlaması ekleme komutudur. Tabloya yeni sütun ekleme komutudur. Tablonun kayıt parametrelerini değiştirme komutudur. Bir kısıtlamayı açma/kapama komutudur. Tablonun üzerinde ki bütün tetiklemeleri açma/kapama komutudur. Tablo ya kayıt girmeye müsaade etme/etmeme komutudur. Tablonun paralellik derecesini değiştirme komutudur. ALTER TABLE HASTA ADD (ADI CHAR(20), SOYAD CHAR(20)) Bu örnekte, hasta tablosu içerisine ADI ve SOYADI karakter (char) tipteki alanlar eklenmiştir. Bu işlemden sonra SELECT HASTA.*, ROWID FROM HASTA komutunu yazarak gelen tabloda ki ADI ve SOYADI alanlarına ADI alanına (ÖZLEM,HÜLYA,ZEYNEP) SOYADI alanına (YILDIZ,AK,MERT) verilerini alt alta girdikten sonra SELECT * FROM HASTA dediğimizde aşağıdaki tablo karşımıza çıkacaktır. HS_AD HS_SOYAD CINSIYET ADI SOYAD ORHAN AYAZ E ÖZLEM YILDIZ TÜRKAN AYAZ K HÜLYA AK ÖZLEM AYAZ K ZEYNEP MERT ALTER TABLE HASTA MODIFIY HS_AD VARCHAR2(40) Bu örnekte de hasta tablosunun bir alanının uzunluğu 40 olarak değiştiriliyor. Modify komutu bir alanın uzunluğunu (karakter sayısını) değiştirir. Hasta tablosunda ki HS_AD alanının uzunluğunun VARCHAR2(40) olarak değiştiğini DESC HASTA komutunu çalıştırarak görebiliriz. SIRA ALAN ADI ALAN TIPI BOŞ 1 HS_KEY NUMBER NOT NULL 2 HS_AD VARCHAR2(40) 3 HS_SOYAD VARCHAR2(18) 4 ISLEMSAYI NUMBER 5 DOGUMTARIHI DATE 6 DOGUMYERI VARCHAR2(15) ANALYZE ANALYZE, Tablolar ve indekslerle ilgili istatistik toplayan DLL komutudur. AND AND, Where bölümünde birden fazla şart yazıldığı zaman, aralarındaki ilişkiye göre kullanılan ifadedir. And her iki şartın aynı anda doğruluğunun gerektiği durumlarda kullanılır. SELECT * FROM HASTA WHERE HS_KEY>20 AND HS_KEY<40 Bu örnek ile hasta numarası(HS_KEY) 20 ile 40 arasında olan tüm alanlar listelenmektedir. HS_KEY HS_AD HS_SOYAD CINSIYET ISLEMSAYI DOGUMYER DOGUMTARIHI 21 ELAHATTIN İÇER E 25 MUHARREM BEŞIR E 1 29 VURAL CENGİZ E 33 ALI TURGAY ERKAN E 1 37 KAZIM GÜÇLÜ E 1 ANY ANY, Alt sorgulamadan seçilen değerlerden en az biri karsılaştırılır. SELECT * FROM HASTA WHERE HS_KEY=ANY(93,2005,14005) Any komutu ile hasta tablosu içerisinde hasta numarası (HS_KEY) olan ve any komutu içerisine yazılan değerlerden en az birini karşılaştırarak sonuca yansıtır. HS_KEY HS_AD HS_SOYAD CINSIYET ISLEMSAYI DOGUMYERI DOGUMTARIHI 93 AHMET AYAZ E 14 2005 SEMA SARIKAYA K 1 14005 VİLDAN TURHAL K AS AS, Bir tablodan, içindeki kayıtlarla birlikte sadece balirtilen alanları alarak bir başka tablo oluşturma komutudur. Bir sütünun adını değiştirme komutudur. SELECT HS_KEY AS HASTANUMARASI FROM HASTA As, komutu ile hs_key olan alanın adını HASTANUMARASI olarak değiştirilebilir. HASTANUMARASI 5 9 13 17 ASC Sorgu sonucu dönen kayıtlarda sıralamayı küçükten büyüye doğru yapmak için kullanılan ifadedir. SELECT * FROM HASTA ORDER BY HS_KEY ASC Hasta tablosunda ki hasta numaralarını(HS_KEY) küçükten büyüye doğru sıralamaktadır. HS_KEY HS_AD HS_SOYAD CINSIYET ISLEMSAYI DOGUMYER DOGUMTARIHI 5 I.HAKKI ALPTÜRK E 3 9 VEDAT KARAARSLAN E 2 13 ZAFER TEKBUDAK E 1 17 CELALETTİN DINÇER E 1 ASCII ASCII, Bir karakteri yada cümleyi ascıı sayıya çevirir. SELECT ASCII('COZUM'), ASCII('BILGISAYAR') FROM HASTA Ascıı komutu ile yazılan karakter yada cümleyi ascıı karakterine çevirerek sonuca yansıtır. ASCII(COZUM) ASCII(BILGISAYAR) 67 66 67 66 67 66 ASIN ASIN(n) n sayısının ark sinüsünü sonuç olarak döndürür. SELECT ASIN(-1), ASIN(0), ASIN(1) FROM HASTA Bu örnekte olduğu gibi bir sayıyı (pozitif yada negatif) ark sinüsünü sonuç olarak yansıtır. ASIN(-1) ASIN(0) ASIN(1) -2 2 -2 2 -2 2 ASSOCIATE ATAN ATAN(n) n sayısının ark tanjantını sonuç olarak döndürür. SELECT ATAN (.781285627), TAN(663225116) FROM HASTA Bu örnekte olduğu gibi bir sayıyı (pozitif yada negatif) ark tanjantını sonuç olarak yansıtır. ATAN (.781285627 TAN(663225116) 1 1 1 1 1 1 ATAN2 SELECT ATAN2(.8,1), ATAN(.9) FROM HASTA ATAN2(.8,1) ATAN(.9) 1 1 1 1 1 1 AUDIT AUDIT, Veritabanı nesneleri hakkında kontrol işlemleri yapar ve Sql' leri seçerek tanımlama komutudur. AVG AVG, bütün değerlerinin ortalamasını döndürür. SELECT AVG(ISLEMSAYI) FROM HASTA AVG komutu ile hasta tablosundaki bütün kayıtların ortalama işlem sayısını (ISLEMSAYI) hesaplar. AVG(ISLEMSAYI) 2 BETWEEN BETWEEN, İki değer arasındaki kayıtları belirler. SELECT * FROM HASTA WHERE HS_KEY BETWEEN 1 AND 20 Between komutu ile hasta numarası (hs_key) 1 ile 20 arasında olan kayıtları listeler. HS_KEY HS_AD HS_SOYAD CINSIYET ISLEMSAYI DOGUMYER DOGUMTARIHI 5 I.HAKKI ALPTÜRK E 3 9 VEDAT KARAARSLAN E 2 13 ZAFER TEKBUDAK E 1 17 CELALETTİN DINÇER E 1 BFILENAME Declare admin_photo bfile; Begin dmin_photo:=BFILENAME('('/home/oracle','ADMINISTRATOR_PHOTO.JPG'); end; BLOB BLOB, Oracle veritabanında temel kayıt ünitesidir. BY BY komutu, Order By ve Group By komutları ile birlikte kullanılmaktadır. SELECT * FROM HASTA ORDER BY HS_KEY HS_KEY HS_AD HS_SOYAD CINSIYET ISLEMSAYI DOGUMYER DOGUMTARIHI 5 I.HAKKI ALPTÜRK E 3 9 VEDAT KARAARSLAN E 2 13 ZAFER TEKBUDAK E 1 17 CELALETTİN DINÇER E 1 CALL CALL, Database de ki yazılan bir proceduru yada fonksiyonu çağırmak için kullanılır. CEIL CEIL(n) n sayısından büyük mevcut en küçük tam sayıyı sonuç olarak döndürür. SELECT CEIL(10), CEIL(10.5), CEIL(-10.5) FROM HASTA CEIL komutu verilen pozitif yada negatif sayıyı sonuç olarak en küçük sayıyı tam sayıya çevirir. CEIL(10) CEIL(10.5) CEIL(-10.5 10 11 -11 10 11 -11 10 11 -11 CHARTTOROWID CHARTTOROWID(n) Karkater olan n sayısını ROWID değere çevirir ve sonuç olarak da bu değeri döndürür. SELECT * FROM HASTA WHERE ROWID=CHARROWID(") CHR CHR, Bir sayının karakter halini sonuç olarak gösterir. SELECT CHR(70), CHR(80), CHR(90), CHR(120) FROM HASTA Bu örnekte olduğu gibi CHR komutu bir sayıyı karakter haline çevirerek sonuca yansıtılmıştır. CHR(70) CHR(80) CHR(90) CHR(120) F P Z X F P Z X F P Z X F P Z X CLUSTER CLUSTER, Bir kaydın fiziksel yerinin kayıdın içindeki değere bağlı olarak değişen bir tablo yapısı çeşididir. COMMENT COMMENT, Tablo,sütun,görüntü ve snapshot hakkında veri sözlüğüne yorum yazma komutudur. COMMENT on table hasta coloumn(hs_ad) is 'ÖZLEM' COMMIT COMMIT, Bütün yapılan İşlemleri kesin olarak kalıcı olmasını sağlar. Böylece yapılan değişiklikleri varsa diğer kullanıcılarda görür. CONCAT CONCAT, Concat(d1,d2) ile d1 dizesini (string), devamına d2 dizesi eklenmiş olarak sonuçta döndürür. SELECT CONCAT('ÇÖZÜM',' BİLGİSAYAR') AS SIRKET FROM HASTA Bu örnekte olduğu gibi CONCAT komutu ile birinci string' in yanına ikinci stringi ekleyerek bu iki kelimeyi sonuca yansıtır. AS komutu ile de bu birleştirilmiş olan 2 stringin alan adı (SİRKET) belirlenmiş olur. SIRKET ÇÖZÜM BİLGİSAYAR ÇÖZÜM BİLGİSAYAR ÇÖZÜM BİLGİSAYAR CONSTRAINT CONSTRAINT, O kolon için daha açıklayıcı olması açısından ve yapısı açısından kullanılır. Oracle veritabanı tablolarında veri bütünlüğünün sağlanması için veritabanı düzeyinde konan sınırlamalardır. Null/Not Null , Unique, Primary Key, Froeign Key ve Check olmak üzere 5 çeşit kısıtlama vardır. CONTROLFILE CONVERT CONVERT, Oracle versiyon 6 'ya ait veri sözlüğünün oracle versiyon 7'ye çevrilmesinin belirtildiği bölümdür. SELECT CONVERT(CHR(194), 'US7ASCII', 'WE8EBCDIC37C') FROM HASTA Bu örnekte CONVERT komutu ile Oracle versiyon 6'ya ait sayı yada karakteri Oracle 7' ye çevrilmesi sağlar. CONVERT(CHR(194),US7ASCII','W B B B COS COS(n) n sayısının kosinüsünü sonuç olarak döndürür. SELECT COS(0), COS(-1), COS(1) FROM HASTA Bu örnekte COS komutu ile bir sayıyı (pozitif yada negatif) kosinüsüne çevirerek sonuç olarak yansıtır. COS(0) COS(-1) COS(1) 1 1 1 1 1 1 1 1 1 COUNT COUNT(*,sütün) sorgudaki şartlara uyan kayıt sayılarını döndürür. SELECT COUNT(*) FROM HASTA Bu örnekte olduğu gibi COUNT komutu ile hasta tablosunda ki toplam kayıt sayısını bulabiliriz. COUNT(*) 20,997 CREATE CREATE, Tablo, sütun, procedür, index yaratmak için kullanılır. CREATE TABLE COZUM(ADI CHAR(20), SOYADI CHAR(20), CINSIYETI CHAR(5)) Bu komutu yazdığımızda COZUM adında ADI, SOYADI, CINSIYETI alanları yaratılmış olucaktır. Daha sonra INSERT INTO COZUM VALUES ('ÖMER', 'SISO', 'E') yazarak oluşturmuş olduğumuz alanlara bilgi girdikten sonra SELECT * FROM COZUM yazdığımızda aşağıda ki tablo karşımıza çıkacaktır. ADI SOYADI CINSIYETI ÖMER SISO E DATABASE DATABASE, dataların tutulduğu taban. DATE DATE, Tarih tutan alanlar için kullanılır. CREATE TABLE PERS (ADI CHAR(20), SOYADI CHAR(20), TARIH DATE) Komutunu yazdıktan sonra içerisine 2 adet veri girişi yapalım. INSERT INTO PERS VALUES('HAKAN', 'MERT', '01.02.2000') bu komutu çalıştırdıktan sonra şimdi ikinci veri girişini yapalım. INSERT INTO PERS('CANAN', 'TERS', '02.11.2001') bu komutu da çalıştırdığımız da aşağıdaki tablo karşımıza çıkacaktır. ADI SOYADI TARIH HAKAN MERT 01.02.2000 CANAN TERS 02.11.2001 DAY DAY , Gün tutan alanlar için kullanılır. DBA_OBJECTS DBA_OBJECTS, Veritabanındaki bütün nesleler hakkında bilgi içeren görüntüdür. DBA_TRIGGERS DBA_TRIGGERS, Veritabanındaki bütün tetiklemeler hakkında bilgi içeren görüntüdür. DECODE DECODE, Kodlanmış bilgileri açıklamalrıyla listelemek amacıyla kullanılır. SELECT HS_AD, HS_SOYAD, DECODE(CINSIYET, 'E', 'ERKEK', 'K', 'KADIN') AS CINSIYET FROM HASTA HS_AD HS_SOYAD CINSIYET AHMET AKMAN ERKEK VELI YILMAZ ERKEK AYSE GÜN KADIN DELETE DELETE, Herhangi bir table yada sütünu silmek için kullanılır. DELETE FROM ABIOTIK Not: Lütfen bu örneği denemeyiniz. ABIOTIK tablosunu silersiniz , denediyseniz rollback komutunu yazarak silmiş olduğunuz tabloyu geri kurtarabilirsiniz. DESC DESC, Sorgu sonucu dönen kayıtları sıralamayı büyükten küçüğe doğru yapmak için kullanılan ifadedir. Tabloların sütünlarını listelemektedir. SELECT * FROM HASTA WHERE HS_KEY DESC HS_KEY HS_AD HS_SOYAD CINSIYET ISLEMSAYI DOGUMYER DOGUMTARIHI 5 I.HAKKI ALPTÜRK E 3 9 VEDAT KARAARSLAN E 2 13 ZAFER TEKBUDAK E 1 17 CELALETTİN DINÇER E 1 DESCRIBE DESCRIBE, Tabloların fieldlarınını ve yapısını listelemek amacıyla kullanılır. DESCRIBE HASTA SIRA ALAN ADI ALAN TIPI BOŞ 1 HS_KEY NUMBER NOT NULL 2 HS_AD VARCHAR2(40) 3 HS_SOYAD VARCHAR2(18) 4 ISLEMSAYI NUMBER 5 DOGUMTARIHI DATE 6 DOGUMYERI VARCHAR2(15) DICT SQL*PLUS' ta çalışırken, DICTINORY veye eş anlamı olan DICT görüntüsünden bütün veri sözlüğü görüntüleri hakkında bilgi alınabilmektedir.Aşağıdaki örnekte DICT görüntüsünün alanlarını (yapısını) listeleyelim. DESC DICT SIRA ALAN ADI ALAN TIPI BOS 1 TABLE_NAME VARCHAR2(30) 2 COMMENTS VARCHAR2(4000) DICT_COLUMNS DICTIONARY SQL*PLUS' ta çalışırken, DICTINARY veye eş anlamı olan DICT görüntüsünden bütün veri sözlüğü görüntüleri hakkında bilgi alınabilmektedir.Aşağıdaki örnekte DICT görüntüsünün alanlarını (yapısını) listeleyelim. DESC DICTINARY SIRA ALAN ADI ALAN TIPI BOS 1 TABLE_NAME VARCHAR2(30) 2 COMMENTS VARCHAR2(4000) DIMENSION DIRECTORY DISASSOCIATE DISTINCT DISTINCT, Kayıt yinelenmesini önlemek için kullanılan ifadedir. Hasta tablosu içerisinde aynı kayıt iki defa yada daha fazla girildiyse dahi DISTINCT komutu kayıt yinelenmesini önleyerek teke indirerek tabloda gösterilmesini sağlar. SELECT DISTINCT HS_KEY FROM HASTA HS_KEY HS_AD HS_SOYAD CINSIYET ISLEMSAYI DOGUMYER DOGUMTARIHI 5 I.HAKKI ALPTÜRK E 3 9 VEDAT KARAARSLAN E 2 13 ZAFER TEKBUDAK E 1 17 CELALETTİN DINÇER E 1 DROP DROP, table yada sütun silme komutudur. ALTER TABLE DROP ADRES Not: Lütfen bu örneyi denemeyiniz. Hasta tablosu içerisinden adres fieldını silersiniz. Denediyseniz rollback komutu ile son yaptığınız işlemi geri alabilirsiniz. DUAL DUAL, Sql' de kullanılan fonksiyon veya değerler, eğer herhangi bir tablodan çağrılmıyacaksa, bu durumlarda SQL formatının yanlış yazılmış olmaması için FROM bölümünden sonra standart olarak DUAL yazılır. DUMP SELECT DUMP(SYSDATE) FROM HASTA DUMP(SYSDATE) Typ=13 Len=8: 209,7,11,6,13,57,3,0 Typ=13 Len=8: 209,7,11,6,13,57,3,0 Typ=13 Len=8: 209,7,11,6,13,57,3,0 EMPTY_BLOB CREATE TABLE HAK(ADI BLOB) Bu komut zinciri ile ilk önce HAK adında sadece ADI alanı blob olan bir table yarattık. Daha sonra bu tablo da ADI adlı alana bilgi girelim. INSERT INTO HAK(ADI) VALUES(EMPTY_BLOB()) Şimdide SELECT * FROM HAK komutunu çalıştırdığımızda aşağıda ki tabloyu elde ederiz. ADI (OraBlob) EMPTY_CLOB CREATE TABLE HASTANE (ADI CLOB) Bu komut zinciri ile ilk önce HASTANE adında sadece ADI alanı Clob olan bir table yarattık. Daha sonra bu tablo da ADI adlı alana bilgi girelim. INSERT INTO HASTANE(ADI) VALUES(EMPTY_CLOB()) Şimdide SELECT * FROM HASTANE komutunu çalıştırdığımızda aşağıda ki tabloyu elde ederiz.
__________________ | |
|
Etiketler |
komutları, oracle, sql |
Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir) | |
| |
Benzer Konular | ||||
Konu | Konuyu Başlatan | Forum | Cevaplar | Son Mesaj |
22.02.2014 Kalbim.Net Chanserv Levels Komutları ve Chanserv Akick Egitim Komutları | Amelia | Eğitim Dünyası | 9 | 23 Şubat 2014 16:26 |
Oracle Turkiye | YazılımMimarı | Bilim Dünyasından Son Haberler | 0 | 27 Temmuz 2012 14:25 |
Oracle | Fonzerelli | Oracle | 1 | 03 Aralık 2010 17:22 |
Nick Serv Komutları - IRC Komutları - mIRC | armoking_yesil | Unreal IRCd | 0 | 09 Mart 2009 20:35 |