Sobes.tech
Middle

Τι επιστρέφουν οι συναρτήσεις συγκέντρωσης και μη συγκέντρωσης σε ένα ερώτημα SQL;

sobes.tech AI

Απάντηση από AI

Οι συναρτήσεις ομαδοποίησης σε SQL επιστρέφουν μια τιμή, η οποία είναι το αποτέλεσμα της υπολογισμού σε μια ομάδα γραμμών. Για παράδειγμα, οι συναρτήσεις SUM(), COUNT(), AVG(), MAX(), MIN() ομαδοποιούν δεδομένα και επιστρέφουν μια τελική τιμή.

Οι μη ομαδοποιημένες συναρτήσεις (σκαλάρες συναρτήσεις) εφαρμόζονται σε μεμονωμένες τιμές και επιστρέφουν αποτέλεσμα για κάθε γραμμή. Για παράδειγμα, συναρτήσεις εργασίας με συμβολοσειρές (UPPER(), LOWER()), μαθηματικές συναρτήσεις (ABS(), ROUND()) επιστρέφουν μια μετασχηματισμένη τιμή για κάθε εγγραφή.

Παράδειγμα:

SELECT department_id, COUNT(*) AS employee_count
FROM employees
GROUP BY department_id;

Εδώ, το COUNT(*) είναι μια συνάρτηση ομαδοποίησης που επιστρέφει τον αριθμό των υπαλλήλων σε κάθε τμήμα.

Σε αντίθεση:

SELECT employee_name, UPPER(employee_name) AS name_upper
FROM employees;

Το UPPER() είναι μια μη ομαδοποιημένη συνάρτηση που επιστρέφει μια μετασχηματισμένη τιμή για κάθε γραμμή.