3 Ağustos 2017 Perşembe

SQLite Aggregate Metodları

avg metodu
Örnek ver

count
3 tane farklı count kullanımı var
1. count (sütun ismi) : Sütunda null olmayanlar say
2. count(*) : Tüm satırları say
3. count(1) : Tüm satırları say

Örnek
Şöyle yaparız
CREATE TABLE `hospital_statistics_data` (
  `pk_id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `id` varchar(36) COLLATE utf8mb4_general_ci NOT NULL,
  `hospital_code` varchar(36) COLLATE utf8mb4_general_ci NOT NULL,
  `biz_type` tinyint NOT NULL,
  `item_code` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,
  `item_name` varchar(64) COLLATE utf8mb4_general_ci DEFAULT NULL,
  `item_value` varchar(36) COLLATE utf8mb4_general_ci DEFAULT NULL,
  `is_deleted` tinyint DEFAULT NULL,
  PRIMARY KEY (`pk_id`)
) DEFAULT CHARSET=utf8mb4;

// İki tane index ekle
alter table hospital_statistics_data add index idx_hospital_code(hospital_code)
alter table hospital_statistics_data add index idx_biz_type(biz_type);

// Tüm satırları say
select COUNT(*) from hospital_statistics_data;

// Tüm satırları say
select COUNT(1) from hospital_statistics_data;

// pk_id sütununda NULL olmayanları say
select COUNT(pk_id) from hospital_statistics_data;

// biz_type sütununda NULL olmayanları say
select COUNT(biz_type) from hospital_statistics_data;

// item_code sütununda NULL olmayanları say
select COUNT(item_code) from hospital_statistics_data;

count metodu - expression
Açıklaması şöyle
COUNT(<expression>) returns the number of non-NULL values of <expression> in the result set.
count duplicate olan değerleri de sayar. 

Örnek
Elimizde şöyle bir tablo olsun
|id | length | code |
|-------------------|
| 1 |    11  | X00  |
| 2 |    11  | C02  |
| 3 |  null  | A31  |
Şöyle yaparız. Çıktı olarak null değer sayılmadığı için 2 alırız.
SELECT COUNT(length) FROM product
count (*)
null değerler de dahil tüm satırların sayısını döner. Açıklaması şöyle
COUNT(*) returns the number of items in a group. This includes NULL values and duplicates.
COUNT(ALL expression) evaluates expression for each row in a group and returns the number of nonnull values.
COUNT(DISTINCT expression) evaluates expression for each row in a group and returns the number of unique, nonnull values.
group_concat metodu
Açıklaması şöyle
"The order of the concatenated elements is arbitrary."
Elimizde şöyle bir tablo olsun.
title      id     name
manager.....1......bob
manager.....2......tim
manager.....3.....suzy
worker......4.....john
Şöyle yaparız.
select title, group_concat(id), group_concat(name) group by title
Çıktı olarak şunu alırız.
manager......1,2,3......bob,tim,suzy
worker...........4..............john
title ve id sütunlarını sıralı almak istersek şöyle yaparız.
SELECT title, group_concat(id), group_concat(name)
FROM (SELECT title, id, name
      FROM ...
      ORDER BY title, id  -- or whatever order you want
     )
GROUP BY title;
max metodu
Şöyle yaparız.
SELECT max(AAC), Time FROM prices;
min metodu
Örnek ver

sum metodu
Örnek ver

total metodu
Örnek ver

Hiç yorum yok:

Yorum Gönder