Laboratuvar 2 Tek Kayıt Fonksiyonları

Benzer belgeler
VERĐTABANI YÖNETĐM SĐSTEMLERĐ

Veritabanı Tasarımı. Dönüşüm Fonksiyonları

BÖLÜM- 3: TEK SATIR FONKSİYONLARI

Gruplama (aggregate) fonksiyonları bir dizi değer üzerinde hesaplama yaparlar ve bir sonuç

ORACLE DERS 1 SQL E GİRİŞ

1 ORACLE 11G DATABASE SERVER LE

IN ve NOT IN Tablodaki alan içeriklerine ulaşmak için IN deyimi kullanılır.

Veri Tabanı-I 9.Hafta

SQL Komutları (2) Uzm. Murat YAZICI

6 Aritmetiksel Operatörler ve Hazır Fonksiyonlar

Veri Tabanı Yönetim Sistemleri Bölüm - 6

Oracle da kullanılan veri tipleri:

Charindex() CHARINDEX

FORMÜL ADI (FONKSİYON) FORMÜLÜN YAZILIŞI YAPTIĞI İŞLEMİN AÇIKLAMASI

Veritabanı Tasarımı. Büyük/Küçük Harf ve Karakter İşleme

SQL'e Giriş. SELECT Deyimi. SQL Komutları. Yardımcı Deyimler

RAPOR VE FORMLARDA KULLANILAN FONKSİYONLAR

SQL (Structured Query Language)

BÖLÜM -7: TABLOLARI OLUŞTURMA VE YÖNETME

8 Oracle da tablo yapısı içinde otomatik artan kolon yoktur. (identity kolon

YAPISAL SORGULAMA DİLİ (SQL)

Veri Tabanı Programlamaya Giriş

Veritabanı Tasarımı. Veri Türleri Kullanma

ÜNİTE NESNE TABANLI PROGRAMLAMA I. Uzm. Orhan ÇELİKER VERİTABANI SORGULARI İÇİNDEKİLER HEDEFLER

Basit SQL Sorguları Veritabanından verilerin SELECT cümleleri ile alınması işlemine sorgulama denir.

Ders Tanıtım Sunumu. Database Managegement II. Elbistan Meslek Yüksek Okulu Güz Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU

Veritabanı Tasarımı. Düzenli İfadeler

Internet Programming II

-- işareti tek satırlık açıklamalarda kullanılır. Açıklama olarak yazılan satırın önüne konulması yeterlidir.

Internet Programming II

Fonksiyonlar, Count, Sum, Avg, Max, Mın, Lower, Upper, Length, Round, Mod, Left, Right, Concat, If

Oracle Database 11g: Introduction to SQL

Veri Tabanı Hafta Dersi

Yukarıdakilerden hangileri DML (Data Manipulation Language) ile gerçekleştirilir?

Öğr. Gör. Cansu AYVAZ GÜVEN VERİTABANI-II. Değişken Tanımlama Ve Akış Kontrol Deyimleri

SQL PROGRAMLAMA. Bir batch, bir arada bulunan bir dizi SQL deyimidir. Batch ayıracı GO deyimidir.

VERİTABANI. SQL (Structured Query Language)

SAYISAL ÖZELLİKLİ HAZIR METOTLAR VE ZAMAN FONKSİYONLARI SAYISAL ÖZELLİKLİ METOTLAR

Aşağıdaki şemaya dikkat edin. Sorgulamalarımızı genellikle bu şemaya göre yapacağız.

Veri Tabanı II Veri Tipleri. 1. Hafta Dersi

3. Hafta Tablo İşlemleri BPR255 Veritabanı. Bu Derste Öğrenecekleriniz: 1. Tablo İşlemleri Kısıtlamalar (Constraints)

VERĐTABANI YÖNETĐM SĐSTEMLERĐ

KISITLAMALAR (CONSTRAINT)

Veritabanı. SQL (Structured Query Language)

VERİ TABANI YÖNETİM SİSTEMLERİ II. 2. SQL PROGRAMLAMA, VERİ TİPLERİ ve DEĞİŞKENLER

Oracle'dan PostgreSQL'e geçiş

API v1.0

FORMÜLLER VE FONKSİYONLAR

VERİ TABANI YÖNETİM SİSTEMLERİ I

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

RASYONEL SAYILAR. ÖRNEK: Aşağıda verilen eşitliklerde verilmeyen harflere karşılık gelen tamsayıları bulunuz. RASYONEL SAYILAR A =?

Tablolar Arası İlşikiler ve Alan Özellikleri Siparis.musteri_no musteri.musteri_no Siparis.urun_kodu musteri.urun_kodu

DAO İLE SQL KOMUTLARI. Sql komutlarını artık veri tabanında kullanmaktan başka çaremiz yok arkadaşlar. Şimdi bu sql derslerimize başlayalım.

Adım Adım SPSS. 1- Data Girişi ve Düzenlemesi 2- Hızlı Menü. Y. Doç. Dr. İbrahim Turan Nisan 2011

Sorgudan elde edilen değerin değişkenlere aktarılmasını sağlar. Sorgudan tek satır dönmesi gerekir. Çok satır dönerse hata verir.

SQL Deyimleri. Öğr.Gör.Volkan ALTINTAŞ Volkanaltintas.com

ASAL SAYILAR - TAM BÖLENLER - FAKTÖRİYEL Test -1

Öğr. Gör. Cansu AYVAZ GÜVEN VERİTABANI-II. Değişken Tanımlama Ve Akış Kontrol Deyimleri

ONDALIK GÖSTERİMLER ONDALIK GÖSTERİM. ÖRNEK: Aşağıda verilen kesirlerin ondalık gösterimlerini yazınız.

TEMEL KAVRAMLAR Test -1

Veri Tabanı Tasarım ve Yönetimi

MS Excel. Excel Microsoft Office in bir parçasını oluşturur. Office 2007, Office 2010, Office 2013, Office 2016

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri

Excel Formüller ve Fonksiyonlar. Yusuf MANSUROĞLU Mühendislik Hizmetleri Müdür Yardımcısı

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir

ÜNİTE NESNE TABANLI PROGRAMLAMA I. Uzm. Orhan ÇELİKER VERİTABANI SORGULARI İÇİNDEKİLER HEDEFLER

Veritabanı Tasarımı. İndeksler ve Eşanlamlar

Dizgiler. C dilinde karakter m şeklinde tek tırnak içerisinde yazılan ifadelerdir. Bu karakterlerin her biri aslında bir tamsayı ile ifade edilir.

Lıke Joker Karakterler, Is [not] Null, Order By, Group By, As

SQL e Giriş. Uzm. Murat YAZICI

KONU 2 MICROSOFT EXCEL SIK KULLANILAN FONKSİYONLAR VE UYGULAMALARI

Bölüm 4: DDL Veri Tanımlama Dili

Temel Giriş/Çıkış Fonksiyonları

VERİTABANI Veritabanı Yönetimi

Temel Excel Kullanım Bilgisi

Oracle'dan PostgreSQL'e geçiş

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Veri Tabanı ve Yönetimi (BİL 301)

Veritabanı Tasarımı. Tablo Oluşturma

C Konsol Giriş Çıkış Fonksiyonları

DESTEK DOKÜMANI. : İnsan Kaynakları

Veri Tabanı Hafta Dersi

EXCEL DE ARİTMETİKSEL İŞLEMLER

TEMEL SQL SORGU ÖRNEKLERİ. Yukarıdaki sorguyu yazıp çalıştırdığımızda db_market adında bir veritabanı oluşturulur.

Buna göre, eşitliği yazılabilir. sayılara rasyonel sayılar denir ve Q ile gösterilir. , -, 2 2 = 1. sayıdır. 2, 3, 5 birer irrasyonel sayıdır.

Microsoft Excel 2007 DERS-3 FONKSİYONLAR MANTIKSAL FONKSİYONLAR

Bir çeşit prosedür. Ancak bu prosedür kendiliğinden çalışır. Çalışması için tabloya veri eklemek, veri silmek, veri değiştirmek yeterlidir.

Veri Tabanı Yönetim Sistemleri Bölüm - 4

Aşağıdaki tabloyu inceleyin. Yeni kayıt girme, var olan bir kaydı silme veya güncelleme işlemlerini bu tabloya göre yapacağız.

Veritabanı Tasarımı. Kullanıcı Erişimini Kontrol Etme

BÖLÜM- 11: BÜYÜK VERİ KÜMELERİ

5 SQL- Yapısal Sorgulama Dili. Veritabanı 1

Tablolar Arası İlşikiler ve Alan Özellikleri. Şekil 1. Magaza veritabanının tabloları ve tablolar arasındaki ilişkiler

20461C Querying Microsoft SQL Server Modül Seviye Belirleme Testi

Çok tablolu sorgulamalar

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

SP_RENAMEDB eski_isim, yeni_isim VEYA SP_RENAMEDB 'eski isim', 'yeni isim'

Veritabanı sistemlerinde veri bütünlüğünü sağlayabilmek için CONSTRAINTS olarak adlandırılan bazı zorlayıcı ifadeler kullanılabilir.

SQL Query and Table Application

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

Transkript:

Laboratuvar 2 Tek Kayıt Fonksiyonları Fonksiyonlar sıfır veya daha fazla bağımsız değişken alan ve sonuçta sadece bir değer döndüren programlardır. Oracle ile birlikte birkaç hazır fonksiyon gelmektedir. Bu fonksiyonlar SQL cümlelerinde kullanılabilir. Fonksiyonları temelde beş grupta toplamak mümkündür: Tek kayıt fonksiyonları, kümeleme fonksiyonları, analitik işlem fonksiyonları, nesne referans fonksiyonları ve kullanıcı tarafından tanımlanmış fonksiyonlar. Tek Kayıt Fonksiyonları Tek kayıt fonksiyonları tek bir kayıt satırı için çalışır ve sonuçta sadece tek bir değer döndürür. Tek kayıt fonksiyonlarını aşağıdaki gruplara ayırmak mümkündür: Karakter Fonksiyonları Sayısal Fonksiyonlar Tarih Fonksiyonları Dönüştürme Fonksiyonları Diğer Fonksiyonlar Tüm tek kayıt fonksiyonları SQL cümleleri içerisine dahil edilebilir. Tek kayıt fonksiyonlarının SQL cümleleri içerisinde yer alabileceği bölümler aşağıda kısaca listelenmiştir: SELECT cümlelerinin SELECT, WHERE ve ORDER BY kısımlarında, UPDATE cümlelerinin SET kısmında INSERT cümlelerinin VALUES kısmında DELETE cümlelerinin WHERE kısmında. NOT: Tek kayıt fonksiyonları SQL cümlelerinin HAVING kısmında kullanılmaz. HAVING kısmında sadece grup (kümeleme) fonksiyonları kullanılabilir. SQL cümlelerinde fonksiyonları kullanırken bu fonksiyonları iç içe yazma imkanımız vardır. Yani bir fonksiyonun sonucunu diğer bir fonksiyona parametre olarak verebiliriz. Ayrıca tek kayıt fonksiyonları grup fonksiyonları içerisine yazılabileceği gibi, grup fonksiyonları da tek kayıt fonksiyonları içerisine yazılabilir. KARAKTER FONKSİYONLARI Karakter fonksiyonları karakter değerler üzerinde işlem yapar. Birçoğu bir veya daha fazla karakter veri tipinde parametre alır ve karakter ya da sayısal veritipinde değer döndürür. Karakter fonksiyonlarını iki gruba ayırmak mümkündür: Büyük, küçük harf dönüşüm fonksiyonları (LOWER, UPPER, INITCAP) Karakter işleme fonksiyonları (SUBSTR, CONCAT, LENGTH, RTRIM, LTRIM,...) Aşağıda en çok kullanılan karakter fonksiyonları biraz daha detaylı anlatılacaktır.

CONCAT CONCAT fonksiyonu iki karakter dizgesi alır ve sonuç olarak ikinci dizgeyi birinci dizgeye eklenmiş olarak dönürür. CONCAT(sütun1 dizge1, sütun2 dizge2) SUBSTR SUBSTR(<k1>,<m>[,<n>]) fonsiyonu bir karakter dizgesi k1 içerisinde m inci pozisyondan başlayarak dizgenin sonuna kadar ya da eğer belirtilmişse n inci pozisyona kadar olan dizgeyi döndürür. SUBSTR(sütun1 dizge1, m [, n ] ) LENGTH LENGTH(<k>) fonksiyonu ilgili karakter dizgesinin uzunluğunu döndürür. LENGTH(sütun dizge) LOWER ve UPPER LOWER(<k1>) fonksiyonu karakter dizgesi bir paramtre alır. Bu fonksiyon parametre olarak verilen karakter dizgesinin tüm harflerini küçük harfe çevirir. UPPER(<k1>) fonksiyonu ise LOWER fonksiyonunun aksine tüm harfleri büyük harfe çevirir. LOWER(sütun dizge) UPPER(sütun dizge) SAYISAL FONKSİYONLAR Sayısal fonksiyonlar sayısal değerler üzerinde bir kısım matematiksel ya da aritmetik işlem yaparlar. Tüm parametreleri sayısal değerlerdir ve tüm fonksiyonlar sayısal değer döndürür. ROUND ROUND(<s1>,<s2>) fonksiyonu iki parametre alır. s1 sayısal bir değer ve s2 ise bir tamsayıdır. Bu fonksiyon s1 değerini s2 değerinde belirtilen basamak kadar yuvarlar. s1 değeri pozitif ise ondalık karakterinin sağından, negatif ise solundan yuvarlama yapılır. ROUND(sütun>ifade, tamsayı) TRUNC TRUNC(<s1>,<s2>) fonksiyonu iki parametre alır. s1 sayısal bir değer ve s2 ise bir tamsayıdır. Bu fonksiyon s1 değerini s2 kadar ondalık karakterinin sağ kısmından keser. s2 negatif olursa ondalık karakterinin solundan kesme yapılır. TRUNC(sütun ifade, tamsayı) TARİH FONKSİYONLARI Tarih değerleri Oracle da yüzyıl, yıl, ay, gün, dakika ve saniye değerlerini ifade eden sayılar olarak saklanır. Varsayılan tarih formatı DD-MON-YY dir. Geçerli ORACLE tarih değerleri 1 Ocak 4712 M.Ö. ve 31 Aralık 9999 M.S. arasındaki değerlerdir. Tarih değerleri sayısal olarak saklandığı için bunlar üzerinde aritmetik işlem yapılabilir. Tarih değerlerini ekleyip çıkartabilirsiniz.

Tarih Değerleri Aritmetiği İşlem Sonuç Açıklama tarih+ sayı tarih Tarihe gün ekleniyor tarih sayı tarih Tarihten gün çıkarılıyor tarih1 - tarih2 gün sayısı İki tarih birbirinden çıkarılıyor tarih + sayı/24 tarih Tarihe saat ekleniyor Aşağıdaki tabloda sık kullanılan tarih fonksiyonlarının bir listesi görüülmektedir. Tarih Fonksiyonları ADD_MONTHS EXTRACT LAST_DAY MONTHS_BETWEEN NEXT_DAY SYSDATE Bir tarihe belirtilen miktar kadar ay ekler. Tarih/zaman ifadelerinden belirli bir parçasını verir. Örneğin gün, ay, yıl gibi parçalardan isteneni verir. Ayın son gününü verir. İki tarih arasında kaç ay varsa o değeri verir. Verilen bir tarihteki haftanın bir sonraki gününü verir. Örneğin t1 tarihinden sonraki Pazartesi hangisi gibi. O anki tarih saat değerini verir. Aşağıda en çok kullanılan tarih fonksiyonları biraz daha detaylı anlatılacaktır. MONTHS_BETWEEN MONTHS_BETWEEN(<t1>,<t2>) fonksiyonu iki parametre alır. t1 ve t2 parametreleri tarih değerleridir. t2 tarihi t1 den büyük olmak kaydıyla t1 ve t2 arasında kaç ay olduğu bilgisini verir. Eğer her iki tarih de aynı gün ise ya ada her ikisi de ayın son günü ise sonuç bir tamsayı değeri olur. MONTHS_BETWEEN(tarih1,tarih2) ADD_MONTHS ADD_MONTHS(<t>,<s>) fonksiyonu iki parametre alır. t bir tarih değeri ve s ise sayıdır. Bu fonksiyon t tarihine s kadar ay değeri ilave eder. Eğer s değeri ondalık bir sayı ise önce tamsayıya çevrilir. ADD_MONTHS(<tarih>,<sayı>) NEXT_DAY NEXT_DAY(<t>,<g>) fonksiyonu iki parametre alır. t bir tarih değeri ve g ise haftanın bir günüdür. Gün değeri kısaltılmış olarak da yazılabilir. Bu fonksiyon bu tarihten sonraki belirtilen günün ilk tarihini verir. NEXT_DAY(<tarih>,<haftanın günü>) LAST_DAY LAST_DAY(<t>) fonksiyonu tek parametre alır. t bir tarih değeridir. O tarihteki ayın son gününü verir. LAST_DAY (<tarih>) SYSDATE SYSDATE fonksiyonu parametre almaz. O anki tarih saat değerini verir.

DÖNÜŞÜM FONKSİYONLARI Oracle da tablo sütunlarını, Oracle veri tiplerinin yanında ANSI, DB2 ve SQL/DS veri tiplerinde de tanımlamak mümkündür. Bu tür veri tiplerini Oracle içsel olarak Oracle veritipine dönüştürür. Bazı durumlarda Oracle bir veri tipinde değer beklerken, farklı bir veri tipinde değer geldiği zaman mümkün olduğu durumlarda Oracle otomatik olarak gerekli dönüşüm işlemini yapar. Bu dönüşüm işlemini Oracle otomatik olarak yapsa da dönüşüm işleminin kullanıcı tarafından yapılması tavsiye edilir. Dönüşüm işleminin kullanıcı tarafından yapılabilmesi için Oracleda bir kısım fonksiyonlar mevcuttur. Bu fonksiyonlar genelde veritipi TO veritipi şeklinde isimlendirilmiştir. Oracle ın İçsel Olarak (Otomatik Olarak) Dönüşüm Yaptığı Veritipleri Eski Veritipi Yeni Veritipi VARCHAR2 veya CHAR NUMBER VARCHAR2 veya CHAR DATE NUMBER VARCHAR2 DATE VARCHAR2 Aşağıdaki tabloda dönüşüm fonksiyonlarının bir listesi görülmektedir. Dönüşüm Fonksiyonları Fonksiyon Açıklama TO_CHAR Tarih değerleri istenilen formatta karaktere dönüştürülür. TO_DATE Format belirtilerek verilen karakter değeri tarih değerine dönüştürülür. TO_NUMBER Sayısal değerlerden oluşan karakter dizgesini sayıya dönüştürür. Format verilebilir. Aşağıda en çok kullanılan dönüşüm fonksiyonları biraz daha detaylı anlatılacaktır. TO_CHAR TO_CHAR(<ts>[,<fmt>[,<nlsparam]]) fonksiyonu üç parametre alır. ts değeri tarih ya da sayıdır. fmt istenilen format biçimidir. nlsparam dil ve yer formatlama biçimidir. TO_CHAR(<tarih sayı>[,<fmt>[,<nlsparam]]) DATE veritipine ait bir veriyi istediğiniz formatta alabilmek için TO_CHAR fonksiyonu ile birlikte bir takım maskeler kullanılmaktadır. En çok kullanılan maskelerden bazıları aşağıda verilmiştir. TO_CHAR Fonksiyonu ile Kullanılabilen Tarih Formatları Format Açıklama D Sayısal olarak haftanın gümü (1-7) DD Sayısal olarak ayın günü (1-31) DDD Sayısal olarak yılın günü (1-365) DY Günün kısa yazılışı DAY Günün açık yazılışı MM İki rakamlı ay (01) MON Ayın kısa yazılışı MONTH Ayın uzun yazılışı PM AM veya PM

W WW YEAR Y YY YYY YYYY Ayın haftası Yılın haftası Yılın yazıyla ifadesi Yılın son rakamı Yılın son iki rakamı Yılın son üç rakamı Dört rakamlı yıl TO_DATE TO_DATE(<k>[,<fmt>[,<nlsparam>]]) fonksiyonu üç parametre alır. k karakter disgesidir. fmt istenilen format biçimidir. nlsparam dil ve yer formatlama biçimin belirler. Sonuç değeri DATE veri tipindedir. TO_DATE(<karakter dizge>[,<fmt>[,<nlsparam]]) DİĞER FONKSİYONLAR Bu bölümde diğer kategorilere dahil olmayan Oracle fonksiyonlarından bahsedeceğiz. Bunlardan bir kısmı oldukça kullanışlı olmasına karşın bir kısmı sadece çok sınırlı yerlerde kullanılmaktadır. Diğer Tek Kayıt Fonksiyonları Fonksiyon Açıklama NVL NULL değeri belirtilen gerçek değere çevirir. NVL2 İfade1 NULL değil ise İfade2yi verir. Eğer İfade1 NULL ise İfade3 değerini döndürür. İfade1 herhangi bir veritipi olabilir. USER O anki oturum için kullanıcı adını verir. Aşağıda bu grupta en çok kullanılan fonksiyonlar biraz daha detaylı anlatılacaktır. NVL NVL(<a1>,<a2>) fonksiyonu iki parametre alır. a1 ve a2 herhangi bir ifade olabilir. NVL fonksiyonu eğer a1 in değeri NULL ise a2 yi, eğer a1 in değeri NULL değil ise a1 i döndürür. NVL(ifade1,ifade2) NLV2 NVL2(<a1>,<a2>,<a3>) fonksiyonu üç parametre alır. a1, a2 ve a3 herhangi bir ifade olabilir. NVL2 fonksiyonu eğer a1 in değeri NULL ise a3 ü, eğer a1 in değeri NULL değil ise a2 yi döndürür. NVL2(ifade1,ifade2,ifade3)