Edgedb Tuple Kullanımı
[en] Read in English 2023-04-11
Edgedb, tuple veri tipini destekleyen modern bir veri tabanıdır. Tuple veri tipi, farklı veri türlerinin birleşimlerini temsil etmek için kullanılır ve bu veri yapısı, adı konulmuş veya adlandırılmamış öğeleri içerebilir.
Tuple veri tipi, birden çok farklı veri türünün birleşimlerini saklamak için kullanılır. edgedb’de tuple veri tipi, tuple sözcüğünü kullanarak tanımlanır. Aşağıdaki örnek, adı konulmamış bir tuple
örneği tanımlar ve bu tuple, bir str
ve bir int64
öğesi içerir:
SELECT ('Ali Veli', 35);
Bu örnekte, ('Ali Veli', 35)
ifadesi, bir tuple veri tipini temsil eder. Bu tuple, str
türünde “Ali Veli” adlı bir kişinin adını ve int64
türünde 35 yaşını içerir.
Tuple veri tipi ayrıca adlandırılmış öğeleri de destekler. Adlandırılmış tuple öğeleri, öğelerin adlandırılmış bir şekilde saklanmasına olanak tanır ve daha okunaklı kod yazmayı kolaylaştırır. Aşağıdaki örnek, adlandırılmış bir tuple örneği tanımlar ve bu tuple, name
adlı bir str
ve age
adlı bir int64
öğesi içerir:
SELECT (name := 'Ali Veli', age := 35);
Bu örnekte, (name := 'Ali Veli', age := 35)
ifadesi, adlandırılmış bir tuple veri tipini temsil eder. Bu tuple, str
türünde “Ali Veli” adlı bir kişinin adını ve int64
türünde 35 yaşını içerir.
Tuple veri tipi, veri tabanı işlemlerinde sık sık kullanılır. edgedb, tuple’ları işlemek için bir dizi özel işlemci işlevi sağlar. Bu işlevler, bir tuple içindeki öğeleri sıralamak, tuple içinde belirli bir öğe veya öğeleri aramak, bir tuple içindeki öğeleri filtrelemek, bir tuple içindeki öğeleri toplamak ve daha pek çok işlem yapmak için kullanılabilir.
Aşağıdaki örnekler, edgedb’deki tuple işlemlerini göstermektedir:
-- Tuple içindeki öğeleri sıralama
SELECT (35, 'Ali Veli') ORDER BY 1 DESC;
-- Adlandırılmış tuple içinde belirli bir öğe veya öğeleri arama
SELECT User FILTER User(name='Hatice')
-- Adlandırılmış tuple içindeki öğeleri filtreleme
SELECT User{name, age} FILTER User.age >= 18;
-- Adlandırılmış tuple içindeki öğeleri toplama
SELECT sum(User.age) FILTER User.age >= 18;
Bu örnekler, tuple işlemlerinin bazı örneklerini göstermektedir. İlk örnek, tuple içindeki öğeleri sıralamak için kullanılır. İkinci örnek, adlandırılmış tuple içinde belirli bir öğe veya öğeleri aramak için kullanılır. Üçüncü örnek, adlandırılmış tuple içindeki öğeleri filtrelemek için kullanılır ve son örnek, adlandırılmış tuple içindeki öğeleri toplamak için kullanılır.
Tuple veri tipi, diğer veri tipleriyle de birlikte kullanılabilir. Örneğin, tuple veri tipi, edgedb’de array veri tipinde saklanabilir. Aşağıdaki örnek, bir tuple’ın bir array veri tipinde saklanmasını göstermektedir:
SELECT ['Ali Veli', 35];
Bu örnekte, ['Ali Veli', 35]
ifadesi, bir array veri tipini temsil eder ve bu array, bir str
ve bir int64
öğesi içerir. Bu örnekteki tuple, array’in öğeleri arasında saklanır.
Tuple veri tipi, ayrıca edgedb’de birçok diğer veri tipiyle birlikte kullanılabilir. Örneğin, tuple’lar, edgedb’deki join işlemlerinde kullanılabilir ve özellikle birden çok veri türünü içeren sonuç setlerini birleştirmek için kullanışlıdır. Tuple’lar ayrıca edgedb’deki fonksiyon parametreleri ve döndürülen sonuçlar gibi diğer yerlerde de kullanılabilir.