Кіріспе
Қатынасты белгілі бір атрибуттар жиынымен шектейтін операция реляциялық алгебрада проекция деп аталады. Реляциялық алгебрада проекция – бұл бір аргументті операция, ол түрде жазылады, мұнда – қатынас, ал – атрибут атаулары. Оның нәтижесі – қатынасындағы түбірлердің компоненттері атрибуттар жиынымен шектелгенде алынатын жиын. Яғни, басқа атрибуттар жойылады (немесе алынып тасталады). Практикалық тұрғыдан алғанда, егер қатынас кесте ретінде қарастырылса, проекцияны оның бағандарының ішкі жиынын таңдау деп қарастыруға болады. Мысалы, атрибуттар (аты, жасы) болса, {(Алиса, 5), (Боб, 8)} қатынасын (жасы) атрибут тізіміне проекциялау {5, 8} нәтижесін береді. Біз есімдерді жойып, тек жасқа қатысты мәліметтерді білеміз. Проекция атрибут мәндерін де өзгерте алады. Мысалы, егер атрибуттары , , болса, және мәндері сандар болса, онда , бірақ барлық мәндері екі есе кемітілгендей болады.
relational algebra
In relational algebra, a projection is a unary operation written as , where is a relation and are attribute names. Its result is defined as the set obtained when the components of the tuples in are restricted to the set – it discards (or excludes) the other attributes. In practical terms, if a relation is thought of as a table, then projection can be thought of as picking a subset of its columns. For example, if the attributes are (name, age), then projection of the relation {(Alice, 5), (Bob, 8)} onto attribute list (age) yields {5,8} – we have discarded the names, and only know what ages are present. Projections may also modify attribute values. For example, if has attributes , , , where the values of are numbers, then
is like , but with all values halved.
Қарым-қатынас ұғымдары
Жинақ теориясындағы тығыз байланысты ұғым (қараңыз: проекция (жинақ теориясы)) реляциялық алгебрадан ерекшеленеді, себебі жинақ теориясында атрибуттарға емес, реттелген компоненттерге проекция жасалады. Мысалы, екінші компонентке проекциялау 7 нәтижесін береді. Проекция – предикат логикасындағы экзистенциалды квантификацияның реляциялық алгебрадағы аналогы. Қосылмаған атрибуттар, оператор қатынасының кеңеюін білдіретін предикаттағы экзистенциалды түрде квантификацияланған айнымалыларға сәйкес келеді. Төмендегі мысал осыны көрсетеді. Экзистенциалды квантификациямен байланысы бар болғандықтан, кейбір мамандар проекцияны алынып тасталған атрибуттар арқылы анықтауды ұсынады. Компьютерлік тілде екеуі үшін де белгілеуге болады, және бұл ISBL және ISBL-ден үлгі алған бірнеше тілде іске асырылды. Моноидтар санатында да дерлік бірдей ұғым кездеседі, ол тізбек проекциясы деп аталады, және ол берілген әліпбиге жатпайтын тізбектегі барлық әріптерді жоюдан тұрады. SQL стандартында іске асырылғанда, "стандартты проекция" жиынның орнына көп жиынтықты қайтарады, ал қайталама деректерді жою үшін DISTINCT кілт сөзі қосылып, проекция қолданылады.