Проекція посилається на той підмножина набору всіх стовпців, знайдених у таблиці, які потрібно повернути. Він може коливатися від 0 ** до повного набору.
У таблиці є два "набори", які відповідають двом вимірам таблиці. Кожна таблиця має набір стовпців , а також набір рядків . Кожне окреме значення таблиці можна знайти на певному перетині цих двох * наборів **. Однак ваше значення не може бути знайдено шляхом "переходу" на адресу, наприклад, T60 , як ви робите з Excel.
У реляційних таблицях немає порядку . Це важливо пам’ятати. Замість цього, щоб отримати своє єдине значення, ви вибрали б для підмножини стовпців (один у цьому випадку) та підмножини рядків (один у цьому випадку). Щоб вибрати підмножину одного стовпця з усіх доступних, вам потрібно знати лише його назву, а також назву таблиці. Назва стовпця буде унікальною у межах її таблиці.
Вибравши стовпець, у якому знаходиться ваше значення, вам потрібно вибрати конкретний рядок, у якому він знаходиться. Однак рядки не мають імен, як це роблять стовпці. Те, як ми визначаємо рядок. . . ну, ми точно не робимо. . . Ми вказуємо щось, що нам відомо про значення, яке ми шукаємо. Ви повинні знати щось, що стосується (буквально) цінності, яку ви шукаєте. Якщо ви можете вказати достатню кількість пов'язаної інформації, можливо, ви зможете зменшити набір повернутих рядків до тієї, яку ви шукаєте.
Подумайте про це так, ніби студент коледжу втратив свій рюкзак. Скажімо, хлопець її втратив. Він дзвонить загубленим і знайденим, а жінка, яка присутні, каже: "Так, у нас є кілька десятків рюкзаків. Чи можете ви це описати?" Ви кажете "Ну, синьо?". На що вона відповідає "Ти питаєш мене чи ти мені кажеш", а потім каже: "У мене є вісім синіх, мені доведеться зробити краще, ніж це, і ти не здався занадто впевненим у цьому". Ви кажете "Подивимося, гм, о, так! У ній була моя математика 1010". "Добре, тепер ти вже до чотирьох". Тоді ти пам'ятаєш, що ти повинен зустріти свою дівчину, Люсі, за 15 хвилин, і це викликало ще одну пам’ять - про час, коли ти нудьгував у Math 1010 і писав, - справжніми маленькими літерами на дні рюкзака: "Я люблю Люсі ».Рікі ».
Проекція може бути схожа на те, що ви сказали, що втратили - рюкзак. Вибір може бути подібний до опису його атрибутів : він синій, має математичну книгу 1010, а внизу написано "Я люблю Люсі".
Ви робите те ж саме з SQL. По-перше, яку інформацію ви хочете побачити. По-друге, критерії, що описують те, що ви хочете бачити. Вони називаються предикатами або твердженнями правдивості . Вони вірні для одного або декількох членів набору. Якщо їх немає, вони не повертають жодних значень.
* Деякі реалізації SQL-постачальників надають засоби для порушення цих правил, наприклад, вкладених таблиць в Oracle. Однак стандартні двовимірні таблиці все ще переважають.
** CJ Date написав дуже цікаву статтю під назвою "Таблиця без стовпців". Мені здалося, що це дуже варто прочитати, оскільки я роблю більшість його багатьох статей "Питання". Дуже рекомендую їх!