20 Nisan 2014 Pazar

SQL'de COUNT Fonksiyonu Kullanımı

  • COUNT fonksiyonu, belirtilen ölçütlerle eşleşen satır sayısını döndürür.
  • Kısaca ; veritabanındaki kayıtları sayabilmek için yerleşik COUNT fonksiyonunu kullanırız.

NOT : Örnek sorgulamalarda Northwind Database'i kullanacağım. bk: Nortwind Database Kurulumu 

COUNT(*) Kullanımı :  SELECT COUNT(<sütun adı>) FROM <tablo adı> 
   
Örnek Sorgu 1: SELECT COUNT(*)AS [Sipariş Kayıt Sayısı]  FROM orders
(Siparişler (Orders) tablosundaki kayıt sayısını Sipariş Kayıt Sayısı başlığıyla listeleyelim.) 

Örnek Sorgu 2: SELECT COUNT(*) AS Ürün_Sayısı FROM Products WHERE SupplierID = 5
(Tedarikci Numarası  (SupplierID) 5 olan tedarikçiye ait ürünlerin sayısını öğrenelim.) 

COUNT DISTINCT Kullanımı :  SELECT COUNT(DISTINCT <sütun adı> FROM <tablo adı>

DISTINCT anahtar kelimesi COUNT ile birlikte kullanıldığında, belirtilen sütundaki benzersiz kayıtların sayısını verir

Örnek Sorgu 3: SELECT COUNT (DISTINCT CustomerID) FROM Orders
(Siparişlerin kaç farklı müşteriden alındığını öğrenelim.) 



SQL de Matematiksel ve Metinsel işlemler

  • Tablolardaki alanları kullanarak, matematiksel veya metinsel ifadeler ile yardımıyla sorgularımızın gücünü arttırabiliriz.
  • SQL matematiksel işlemlerin sonucunu otomatik olarak üretmeyi sağlayan özelliklere sahiptir. 

NOT : Örnek sorgulamalarda Northwind Database'i kullanacağım. bk: Nortwind Database Kurulumu 

Örnek Sorgu : SELECT OrderID, ProductID, (UnitPrice * Quantity) as TotalCost FROM [Order Details] WHERE (UnitPrice * Quantity) > 10000
(Birim fiyat (UnitPrice) alanı Miktar (Quantity) alanı ile çarpılarak toplam fiyat hesaplanır ve “TotalCost” (Toplam Maliyet) adı ile yeni bir alan olarak görüntülenir.) 

SQL'de ORDER BY Kullanımı

  • ORDER BY anahtar kelimesi satırları, bir veya daha fazla sütuna göre sıralamak için kullanılır.
  • ORDER BY ile hangi sütuna göre sıralayacağımızı ve sıralamanın artan veya azalan şekilde yapılacağını belirleriz. 
  • Sıralama artan (ASC) ya da azalan (DESC) olabilir.
  • Sıralama tipi belirtilmemiş ise SQL veriyi artan şekilde sıralar.
  • Sıralama yapılacak alanlar SELECT ifadesinde yer almak zorunda değildir.
NOT : Örnek sorgulamalarda Northwind Database'i kullanacağım. bk: Nortwind Database Kurulumu 

Örnek Sorgu 1 : SELECT ProductName, UnitPrice FROM Products ORDER BY UnitPrice, ProductName
(Ürünler tablosunda ürün kodu, fiyatı ve ismini, önce fiyata göre, sonra da ürün adına göre görüntülemek isteyelim.

Örnek Sorgu 2 : SELECT ProductID, UnitPrice, ProductName FROM Products ORDER BY UnitPrice DESC
(Ürünler tablosunu fiyata göre azalan sırada listeleyelim.)

 























Örnek Sorgu 3 : SELECT * FROM Customers ORDER BY Country,City
(Müşteriler tablosunu Ülke ve Şehir kriteri vererek listeleyelim.

SQL'de SELECT DISTINCT Kullanımı

  • Bazen veriler arasındaki benzerlikleri kaldırarak sadece benzer olmayanları listeletmek isteyebiliriz. Böyle durumlarda SELECT DISTINCT sadece tek olan (unique) kayıtların sonuç listesinde yer almasını sağlar. 
  • Bir sütunda belirli bir kelime iki veya daha fazla sayıda tekrarlanıyor olabilir. Fakat DISTINCT ile her tekrarlanan kayıt sadece bir kez listelenir.  
  • DISTINCT SQL komutu SELECT komutu ile birlikte kullanılmaktadır.
NOT : Örnek sorgulamalarda Northwind Database'i kullanacağım. bk: Nortwind Database Kurulumu
 
Örnek Sorgu : SELECT DISTINCT City FROM Customers
(Müşteriler (Customers) tablosundaki  Şehir (City) sutunlarını listeleyelim. Ve aynı değerlerin tekrarlanmamasını sağlayalım.) 

19 Nisan 2014 Cumartesi

C Çalışmaları

S1-klavyeden girilen bir sayıdan 0'a kadar ekrana yazan programı yazınız.
S2-klavyeden girilen bir sayıya kadar olan rakamları alt alta ekrana yazdıran programı yazınız .
S3-klavyeden girilen 10 sayıdan tek olanların toplamını bulan programı yazınız.

C1:
#include <stdio.h>
#include <conio.h>
int main(int argc, char *argv[])
{
    int sayac;
  int sayi; //Sayı değişkenini tanımlıyorum.
  printf("Sayiyi Girin: \n");
  scanf("%d",&sayi); //değişkene dışardan değer aldırıyorum.
 
  if(sayi<0) //eğer sayı sıfırdan küçükse bu alan çalışacak.
  {
            printf("0'a kadar olan sayilar asagida: \n");
            for(sayac=sayi; sayac<=0 ; sayac=sayac+1)
            {
                   printf("%d\n",sayac);
            }
  } else
  if(sayi==0) //Eğer sayı 0 a eşitse bu alan çalışacak..
  {
  printf("Zaten 0 Girmissiniz..");
  }
  else //Eğer sayı 0 dan büyükse bu alan çalışacak..
  {
              printf("\n0'a kadar olan sayilar asagida: \n\n");

            for(sayac=sayi; sayac>=0 ; sayac=sayac-1)
            {
                   printf("%d\n",sayac);
            }
  }
  printf("\nCikis icin herhangi bir tusa basin...");
  getch();
}

C2:

#include <stdio.h>
#include <conio.h>

int main(int argc, char *argv[])
{
    int sayac;
    int sayi;
    printf("Bir Sayi Girin..\n");
    scanf("%d",&sayi);
  
   if(sayi > 0)
   {
    for (sayac=0;sayac <= sayi; sayac ++)
    {
        printf("\n%d",sayac);
    }
}
else if(sayi==0)
{
     printf("0 girdiniz...");
 } else if(sayi<0)
 {
        printf("Sayi sifirdan kucuk");
        for (sayac=sayi;sayac <=0;sayac++)
        {
            printf("\n%d",sayac);
        }
       
       
        } else {
               printf("Harici Hata var. Yanlis Birseyler yapiyor olmalisin..");
               }
               printf("\n\nCikis icin herhangi bir tusa basin..");
  getch();
 
}

C3:

int main(int argc, char *argv[])
{
    int sayac;
    int toplam=0;
    int dizi[9];
    for(sayac=0;sayac<=9;sayac++)
    {
            printf("%d. Elemani girin\n",sayac+1);
            scanf("%d",&dizi[sayac]);
            printf("%d. Eleman Tanimlandi..\n",sayac+1);
            }
  for(sayac=0;sayac<=9;sayac++)
  {
                               if(dizi[sayac]%2==1) //girilen sayıların 2 ile bölümünden kalan 1 ise, yani tek sayılar ise.
                               {
                                      toplam=toplam+dizi[sayac];
                                      printf("Tek Sayilar: %d\n",dizi[sayac]);            
                                                   }
                               }
                               printf("Toplami: %d",toplam);
                               getch();
}

Copyright 2013-2017 | İbrahim BAYRAKTAR /dev/null Web Günlüğü