πŸ“ ΠŸΠΎΡ‡Π΅ΠΌΡƒ часто Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ, Ρ‡Π΅ΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π² Π‘Π£Π‘Π”

ЧастоС использованиС Ρ„ΠΎΡ€ΠΌ Π² Π‘Π£Π‘Π” ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅Π΅, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΈ эффСктивный способ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Π’ΠΎΡ‚ нСсколько ΠΏΡ€ΠΈΡ‡ΠΈΠ½:

  1. Π€ΠΎΡ€ΠΌΡ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π»Π΅Π³ΠΊΠΎ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ, ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² ΡƒΠ΄ΠΎΠ±Π½ΠΎΠΌ интСрфСйсС.
  2. Π€ΠΎΡ€ΠΌΡ‹ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ примСнСния Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΎΠ² ΠΈ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ Π²Π²ΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ошибок ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ обСспСчиваСт Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΡ‡Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅.
  3. Π€ΠΎΡ€ΠΌΡ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Π²Ρ‹ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ слоТныС бизнСс-Π»ΠΎΠ³ΠΈΠΊΠΈ Π½Π° основС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°. НапримСр, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ для Π·Π°ΠΊΠ°Π·Π° Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ², Π³Π΄Π΅ вычисляСтся общая ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ ΠΈΠ»ΠΈ примСняСтся скидка.
  4. Π€ΠΎΡ€ΠΌΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ для связывания Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅ΠΆΠ΄Ρƒ нСсколькими Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ. НапримСр, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ, которая добавляСт Π½ΠΎΠ²ΡƒΡŽ запись Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ "Π—Π°ΠΊΠ°Π·Ρ‹" ΠΈ автоматичСски связываСт Π΅Π΅ с Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ "ΠšΠ»ΠΈΠ΅Π½Ρ‚Ρ‹".

Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ создания простой Ρ„ΠΎΡ€ΠΌΡ‹ Π² SQL:


    CREATE TABLE Orders (
        OrderID int NOT NULL AUTO_INCREMENT,
        CustomerID int,
        OrderDate date,
        PRIMARY KEY (OrderID),
        FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID)
    );

    CREATE TABLE Customers (
        CustomerID int NOT NULL AUTO_INCREMENT,
        CustomerName varchar(255),
        PRIMARY KEY (CustomerID)
    );
    
    CREATE FORM OrderForm
    (
        OrderID INT,
        CustomerID INT,
        OrderDate DATE,
        OrderTotal DECIMAL(10, 2),
        Discount DECIMAL(10, 2),
        OrderStatus VARCHAR(255)
    )
    

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ создаСм Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ "Orders" ΠΈ "Customers", ΠΈ Π·Π°Ρ‚Π΅ΠΌ создаСм Ρ„ΠΎΡ€ΠΌΡƒ "OrderForm", которая содСрТит поля ΠΈΠ· ΠΎΠ±Π΅ΠΈΡ… Ρ‚Π°Π±Π»ΠΈΡ†. Благодаря Ρ„ΠΎΡ€ΠΌΠ΅ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠ΄ΠΎΠ±Π½ΠΎ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π·Π°ΠΊΠ°Π·Π°, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΎΠ±Ρ‰ΡƒΡŽ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ, скидку ΠΈ статус Π·Π°ΠΊΠ°Π·Π°.

Π’ ΠΈΡ‚ΠΎΠ³Π΅, использованиС Ρ„ΠΎΡ€ΠΌ Π² Π‘Π£Π‘Π” позволяСт Π½Π°ΠΌ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π±ΠΎΠ»Π΅Π΅ ΡƒΠ΄ΠΎΠ±Π½ΠΎΠΉ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΊΠ°ΠΊ для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, Ρ‚Π°ΠΊ ΠΈ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

ΠŸΠΎΡ‡Π΅ΠΌΡƒ часто Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ, Ρ‡Π΅ΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π² Π‘Π£Π‘Π”

Π’ ΠΌΠΈΡ€Π΅ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… сущСствуСт Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹ ΠΊ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΡŽ ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. Одним ΠΈΠ· Ρ‚Π°ΠΊΠΈΡ… ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ² являСтся использованиС Ρ‚Π°Π±Π»ΠΈΡ† ΠΈ Ρ„ΠΎΡ€ΠΌ Π² систСмах управлСния Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… (Π‘Π£Π‘Π”). Π’ Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрим, ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях использованиС Ρ„ΠΎΡ€ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅Π΅, Ρ‡Π΅ΠΌ использованиС Ρ‚Π°Π±Π»ΠΈΡ†.

1. Π£ΠΏΡ€ΠΎΡ‰Π΅Π½ΠΈΠ΅ слоТных запросов

Одним ΠΈΠ· основных прСимущСств использования Ρ„ΠΎΡ€ΠΌ являСтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ создания Π±ΠΎΠ»Π΅Π΅ простых ΠΈ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ понятных запросов ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ. Π’ Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… Π΄Π°Π½Π½Ρ‹Π΅ хранятся Π² Π²ΠΈΠ΄Π΅ структурированных записСй, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Ρ‚Ρ€ΡƒΠ΄Π½ΠΈΡ‚ΡŒ составлСниС слоТных запросов для получСния Π½ΡƒΠΆΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

НапримСр, ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ρƒ нас Π΅ΡΡ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Π° "Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠΈ", содСрТащая ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ сотрудниках ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ список сотрудников, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… Π² ΠΎΡ‚Π΄Π΅Π»Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Ρƒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ сумму, Ρ‚ΠΎ ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ запрос, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ JOIN ΠΈ условия WHERE. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ слоТной Π·Π°Π΄Π°Ρ‡Π΅ΠΉ, особСнно для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ².

Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΠΎΡ€ΠΌ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΡ‚Ρ‡Π΅Ρ‚ ΠΈΠ»ΠΈ запрос, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ автоматичСски вычисляСт Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈ прСдоставляСт Π΅Π΅ Π² ΡƒΠ΄ΠΎΠ±ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅. НСт нСобходимости Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Ρ‚ΡŒ слоТныС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΈ условия.


SELECT Имя, Ѐамилия, Π—Π°Ρ€ΠΏΠ»Π°Ρ‚Π°
FROM Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠΈ
JOIN ΠžΡ‚Π΄Π΅Π»Ρ‹
    ON Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠΈ.ΠžΡ‚Π΄Π΅Π»_ID = ΠžΡ‚Π΄Π΅Π»Ρ‹.ID
WHERE ΠžΡ‚Π΄Π΅Π»Ρ‹.НазваниС = 'Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°' AND Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠΈ.Π—Π°Ρ€ΠΏΠ»Π°Ρ‚Π° > 50000;

2. Π‘ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс

Π€ΠΎΡ€ΠΌΡ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Ρ‚Π°Π±Π»ΠΈΡ†, Π³Π΄Π΅ Π΄Π°Π½Π½Ρ‹Π΅ прСдставлСны Π² Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅, Ρ„ΠΎΡ€ΠΌΡ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΡƒΠ΄ΠΎΠ±Π½Ρ‹Π΅ элСмСнты Π²Π²ΠΎΠ΄Π°, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ списки, Ρ€Π°Π΄ΠΈΠΎΠΊΠ½ΠΎΠΏΠΊΠΈ, Ρ„Π»Π°ΠΆΠΊΠΈ ΠΈ тСкстовыС поля.

НапримСр, Ссли ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ внСсти Π½ΠΎΠ²ΡƒΡŽ запись Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ "Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠΈ", Ρ‚ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΡƒΠ΄ΠΎΠ±Π½Ρ‹Π΅ поля для Π²Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π° ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ. Π­Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ процСсс Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ… Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΌ ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ошибок.


<form action="add_employee.php" method="POST">
    <label for="first_name">Имя:</label>
    <input type="text" id="first_name" name="first_name" required><br>
    
    <label for="last_name">Ѐамилия:</label>
    <input type="text" id="last_name" name="last_name" required><br>
    
    <label for="department">ΠžΡ‚Π΄Π΅Π»:</label>
    <select id="department" name="department">
        <option value="1">Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°</option>
        <option value="2">ВСстированиС</option>
    </select><br>
    
    <input type="submit" value="Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ">
</form>

3. Π£ΠΏΡ€ΠΎΡ‰Π΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с сущностями

Π€ΠΎΡ€ΠΌΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ±Π»Π΅Π³Ρ‡Π°ΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ с сущностями ΠΈ ΠΈΡ… связями Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. Они ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ автоматичСски Π·Π°ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ связанныС поля Π½Π° основС Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

НапримСр, ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ρƒ нас Π΅ΡΡ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Π° "Π—Π°Π΄Π°Ρ‡ΠΈ", содСрТащая ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Π·Π°Π΄Π°Ρ‡Π°Ρ… сотрудников, ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Π° "Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠΈ", содСрТащая ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ всСх сотрудниках ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. Если ΠΌΡ‹ добавляСм Π½ΠΎΠ²ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ ΠΈ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΡ€ΠΈΠ²ΡΠ·Π°Ρ‚ΡŒ Π΅Π΅ ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ сотруднику, Ρ‚ΠΎ Ρ‡Π΅Ρ€Π΅Π· Ρ„ΠΎΡ€ΠΌΡƒ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ сотрудника ΠΈΠ· списка ΠΈ автоматичСски Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΠΎΠ»Π΅ "ID сотрудника" Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ "Π—Π°Π΄Π°Ρ‡ΠΈ".


INSERT INTO Π—Π°Π΄Π°Ρ‡ΠΈ (НазваниС, ОписаниС, Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊ_ID)
VALUES ('ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΎΡ‚Ρ‡Π΅Ρ‚Π°', 'Π‘ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΎΡ‚Ρ‡Π΅Ρ‚ ΠΏΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌ исслСдования', 1);

4. Π¦Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ

ИспользованиС Ρ„ΠΎΡ€ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Π€ΠΎΡ€ΠΌΡ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ комплСксныС запросы ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, прСдоставляя Π»Π΅Π³ΠΊΠΈΠΉ доступ ΠΊ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

НапримСр, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΡ‚Ρ‡Π΅Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Π·Π°Π΄Π°Ρ‡Π°Ρ… сотрудника Π·Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π€ΠΎΡ€ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π΄Π°Ρ‚ ΠΈ автоматичСски ΡΠ³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΏΠΎ сотрудникам. Π­Ρ‚ΠΎ позволяСт быстро ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π½ΡƒΠΆΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π² ΡƒΠ΄ΠΎΠ±Π½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅.


SELECT Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠΈ.Имя, COUNT(Π—Π°Π΄Π°Ρ‡ΠΈ.ID) AS ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ_Π·Π°Π΄Π°Ρ‡
FROM Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠΈ
LEFT JOIN Π—Π°Π΄Π°Ρ‡ΠΈ
    ON Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠΈ.ID = Π—Π°Π΄Π°Ρ‡ΠΈ.Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊ_ID
WHERE Π—Π°Π΄Π°Ρ‡ΠΈ.Π”Π°Ρ‚Π° BETWEEN '2022-01-01' AND '2022-12-31'
GROUP BY Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠΈ.ID;

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрСли нСсколько прСимущСств использования Ρ„ΠΎΡ€ΠΌ Π² Π‘Π£Π‘Π” вмСсто Ρ‚Π°Π±Π»ΠΈΡ†. Π€ΠΎΡ€ΠΌΡ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ составлСниС слоТных запросов, ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс, ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ с сущностями ΠΈ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Однако, слСдуСт ΡƒΡ‡Π΅ΡΡ‚ΡŒ особСнности ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ трСбования ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°.

Π˜Ρ‚Π°ΠΊ, ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… Π² Π‘Π£Π‘Π” стоит Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌ для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ удобства Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ упрощСния процСссов взаимодСйствия с Π½ΠΈΠΌΠΈ.

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

#12. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹ для добавлСния Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π² Π‘Π£Π‘Π” Microsoft Access.

Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹ Π² Microsoft Access Π·Π° 10 ΠΌΠΈΠ½ΡƒΡ‚

ΠΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…: ОбъясняСм Π½Π° ΠΏΠ°Π»ΡŒΡ†Π°Ρ…

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ½Π° схСма управлСния Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π² Π‘Π£Π‘Π”?

πŸ“ ΠŸΠΎΡ‡Π΅ΠΌΡƒ часто Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ, Ρ‡Π΅ΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π² Π‘Π£Π‘Π”

πŸ”Š Как Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π·Π²ΡƒΠΊ Π½Π° сигнализации Mongoose: простоС руководство