AccessTr.Net Facebook Sayfası AccessTr.Net Twitter Sayfası AccessTr.Net Google+ Sayfası AccessTr.neT.Net Youtube Sayfası
Zaman: 25-07-2014, 20:38 AccessTr.neT'e Hoşgeldiniz.

"Kullanıcı Adı"nızı ve "Şifre"nizi size gönderebilmemiz için, sitemize kayıt olurken kullanmış olduğunuz e-posta adresini lütfen aşağıdaki bölüme yazarak "Kullanıcı Adı ve Şifre İsteği" tuşuna basınız.


 
Değerlendir:
  • 0 Oy - 0 Yüzde
  • 1
  • 2
  • 3
  • 4
  • 5
Access'te SQL Kullanımı
Access'te SQL Kullanımı (28-08-2011, 16:37)
  Mesaj: #1 (permalink)


Konu SahibiACCESS’TE SQL

[Resim: vo06ck.jpg]
Veritabanı penceresinde Sorgu sayfasında yeni bir Sorgu oluşturalım. Sorguyu açtıktan sonra çıkan tablo seçme formundan sorgulamak istediğimiz tabloyu seçelim. (Yeni bir dosyada çalışıyorsanız, tabii ki önce bir tablo oluşturmalısınız.) Karşımıza, adının sonundaki sıfatı fazlasıyla hakeden Sorgu Sihirbazı çıktı.
Ben Kisiler tablosunu seçtim. Şimdi yukarıda öğrendiğimiz Sql kodlarını ilk olarak burada deneyebiliriz. Görünüm menüsünden Sql Görünümü’nü seçin.

Bende "SELECT FROM Kisiler;" görünüyor. Bunu, öğrendiğimiz kurallara uyarak;
SELECT Ad, Soyad
FROM Kisiler
WHERE Ad="Ahmet"
olarak değiştiriyorum. Görünüm menüsünden Tasarım’a geçtiğimizde nasıl bir görüntü oluştuğuna bakınız.
[Resim: 3531gsn.jpg]

SELECT kısmında * işareti de kullanabilirdik. Şöyle bir ayrıntıyı hatırlatmalıyım burada ki, bazı durumlarda tasarım görünümünde bütün alanlar olmamasına rağmen sorguyu çalıştırınca bütün alanlar listelenebiliyor. Bu, sorguların bütün alanları gösterme özelliğinin aktif olmasından dolayıdır. Görünüm menüsündeki Özellikler komutundan çıkan pencerede "Tüm Alanları Göster" (Output All Fields) kısmındaki değeri NO yaparsanız sadece sizin seçtiğiniz alanlar listelenecektir.

[Resim: jikh9x.jpg]

Üçüncü örneğimizde Ad, Soyad, No, soyad, Ad alanları seçilmiş.
SELECT Ad, Soyad, [No]
FROM Kisiler
WHERE ( ([No])<100) AND (Soyad) Like "A*") )
ORDER BY Soyad DESC, Ad;

Bu metinle resmi birleştirelim:
1. No alanının parantez içine alınmasının sebebi "NO"nun özel bir kelime olup yorumlayıcı tarafından "Hayır" anlamında anlaşılmamasıdır.
2. En sağdaki Soyad ve Ad alanlarının ikinci kez kullanılmasının sebebi sıralamayı sütunların sıralanmasından farklı yapabilmek için. Yani önce Ad’a sonra Soyad’ göre sıralamak isteseydik baştaki Ad ve Soyad alanlarında sıralama seçerdik. Ama biz önce Soyad’ı istediğimiz için son tarafa bunları koyup Göster (Show) işaretini kaldırdık. (Aynı şeyi 2. soyad alanını birincinin olduğu yere taşıyarak da yapabilirdik. Zira, hem ORDER BY hem de SELECT için seçili alanların sırası aynı olacak.)
3. Sadece Göster (Show) değeri işaretli olan alanlar görüntülenir. Bunlar SELECT kısmına dahil edilir. (Tüm alanları gösterme özelliği kapalıysa tabii.)
4. Dördüncü sütundaki LIKE cümleciğini No alanınkinden alt satırda kullanmamızın sebebi VEYA sorgusu elde edebilmek. Yani " NO<100 OR SOYAD LIKE ‘A*’ " gibi. İkisini aynı satırda kullanırsak VE sorgusu elde ederiz ki, bu, cümlemizdeki "OR"un "AND"a dönüşeceği anlamına gelir.
Bu tasarım modunda ne kadar karışık ya da sade yaparsak yapalım Access evirip çevirip kendi bildiği gibi bir Sql kodu üretecektir.

SELECT Kisiler.Ad, Kisiler.Soyad, Kisiler.[No], *
FROM Kisiler
WHERE (((Kisiler.[No])<100)) OR (((Kisiler.Soyad) Like "A*"))
ORDER BY Kisiler.Soyad DESC , Kisiler.Ad;
Beşinci madde olarak da şunu ekleyeyim o zaman: Alan isimlerinin başına tablonun ismi yazılabilir. Bu, birden çok sayıda kullanılan tabloların olduğu sorgularda daha işe yarar olur.

HERKES İÇİN SORGULAR GRUPLAYARAK TOPLAMLAR ALMAK
Sorgularla ilgili en çok sorulan sorulardan biri gruplamalar hakkında.
o Her ürün ana grubunun içinde kaç adet ürün var?
o Her güne ait toplam satış tutarını nasıl hesaplayacağım?
Yukarıdakiler gibi sorularınız varsa GROUP BY deyimini kullanmanız gerekiyor demektir. Bunu en kolay yapabileceğimiz yer Access'teki Query Builder.
Yeni bir Query (Sorgu) oluşturup içine Kitaplar tablosunu ekleyin. Veri alanlarını alttaki sütunlara yerleştirip View > Totals (Görünüm > Toplamlar) menüsünü seçin ve Query1 resmindeki gibi sorguyu düzenleyin.

Bu haliyle sadece grup adını ve o grupta kaç kitap olduğunu bulmuş oluyoruz. Geçen aylarda bahsettiğimiz UNION sorgu türü ile toplam kitap adedini de bu sorguya dahil edelim.
SELECT GrupAdi, Adet
FROM
(
SELECT Grup as GrupAdi,
COUNT(Grup) AS Adet, 0 AS Sira
FROM Kitaplar
GROUP BY Grup
UNION
SELECT "(TOPLAM)" as GrupAdi,
COUNT(ID) as Adet, 1 AS Sira
FROM Kitaplar
)
AS Liste
ORDER BY Sira, Adet DESC;
Query2 resminde gördüğünüz gibi her bir grup adını ve içinde kaç adet kitap olduğunu listelemekle beraber en altta da toplam kitap adını göstermiş oluyoruz.
Sorguda kullandığımız Sira adlı alan UNION sorgu içindeki farklı iki kümeyi birbirinden ayırmak içindi. İlk kümeyi 0, ikincisini de 1 yapıp bu alanı en altta ORDER BY içine yerleştirmek yeterli oluyor.
Genel olarak adet bulma işlemleri için COUNT deyimini kullanmalısınız. Toplam hesaplamak için ise SUM deyimi kullanılıyor. AVG, MIN, MAX, STDEV, FIST, LAST gibi deyimlerle de ortalama, en küçük, en büyük, standart sapma, ilk, son gibi değerleri elde edebilirsiniz.


İnadına, ille de Accesstr.net...
Alıntı Yaparak CevaplaAlıntı
Cvp: Access'te SQL Kullanımı (28-08-2011, 23:51)
  Mesaj: #2 (permalink)


Eline sağlık hocam.

Saygılar....


Bilgi paylaşıldıkça çoğalır....
Her engel, yaşam koşullarınızı daha iyileştirecek bir fırsattır.


Access için her zaman lazım olacak konu başlıkları listesi
Tüm Mesajlarını BulBul
Alıntı Yaparak CevaplaAlıntı
Cvp: Access'te SQL Kullanımı (29-08-2011, 1:56)
  Mesaj: #3 (permalink)


Paylaşım İçin Teşekkürler,Elinize Sağlık Hocam.

Alıntı Yaparak CevaplaAlıntı
Cvp: Access'te SQL Kullanımı (29-08-2011, 2:06)
  Mesaj: #4 (permalink)


Teşekkürler hocam eline sağlık.


Bizim için zor diye bir şey yoktur, imkansızsa zaman alır...
Tüm Mesajlarını BulBul
Alıntı Yaparak CevaplaAlıntı
Cvp: Access'te SQL Kullanımı (29-08-2011, 7:58)
  Mesaj: #5 (permalink)


Teşekkürler Mehmet hocam,


Bu sitede kurallara uymak zorunludur.
Hızlı Cevap Almanın Püf Noktaları
Yapılmaması gereken ölümcül hatalar
Alıntı Yaparak CevaplaAlıntı
Cvp: Access'te SQL Kullanımı (31-08-2011, 11:35)
  Mesaj: #6 (permalink)


Sayın MehmetDemiral,

Emek ve paylaşımınız için teşekkürler.

İyi bayramlar..

Tüm Mesajlarını BulBul
Alıntı Yaparak CevaplaAlıntı
Sonraki | Önceki


SQL

Access'te SQL Kullanımı

Access'te SQL Kullanımı konusuna ait konu araçları
Etiketler
 
Html Kodu
Url Adresi
 



Benzeyen Konular
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  sql kullanımı için yardım cimbomasil 3 1,033 08-03-2010 10:08
Son Mesaj: cimbomasil
  Sql Enterprise Menager ve kullanımı ile ilgili 3 döküman mehmetdemiral 6 1,346 31-08-2009 10:40
Son Mesaj: makcavus




AccessTr.neT Android Uygulaması Ana Sayfa