Како увести и извести базе података у MySQL или MariaDB

Како увести и извести базе података у MySQL или MariaDB?

Увођење података у базу података и њихово извлачење из ње су основне операције при раду са базама података. MySQL и MariaDB, два популарна система управљања базама података, пружају једноставне и ефикасне команде за ове операције. У овом чланку ћемо истражити како увести и извести податке у MySQL или MariaDB.

Увођење података

INSERT наредба

Команда INSERT се користи за увођење нових редова у табелу у бази података. Синтакса је следећа:

sql
INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...);

На пример, да бисмо унели податке о новом запосленом у табелу employees, можемо користити следећу команду:

sql
INSERT INTO employees (name, email, salary) VALUES ('John Doe', '[email protected]', 10000);

Масовно увођење података

За увођење више редова одједном, можемо користити наредбу INSERT ... SELECT. Ова наредба нам омогућава да унесемо редове из друге табеле или резултата упита у текућу табелу. Синтакса је следећа:

sql
INSERT INTO table_name (column1, column2, ...) SELECT column1, column2, ... FROM other_table;

Дупликати редова

Подразумевано, MySQL и MariaDB не дозвољавају уношење дуплираних редова у табелу. Да бисмо омогућили уношење дупликата, можемо користити кључну реч IGNORE. Синтакса је следећа:

sql
INSERT IGNORE INTO table_name (column1, column2, ...) VALUES (value1, value2, ...);

Извлачење података

SELECT наредба

Команда SELECT се користи за извлачење података из табеле у бази података. Синтакса је следећа:

sql
SELECT column1, column2, ... FROM table_name;

На пример, да бисмо извукли податке о запосленима који зарађују више од 10.000 долара, можемо користити следећу команду:

sql
SELECT name, email, salary FROM employees WHERE salary > 10000;

Условљавање

Можемо да користимо клаузуле WHERE и HAVING за филтрирање редова и групних резултата. Клаузула WHERE филтрира редове пре него што се израчунају агрегатне функције, док клаузула HAVING филтрира редове након што се израчунају агрегатне функције.

Сортирање и ограничавање

Користимо клаузуле ORDER BY и LIMIT за сортирање и ограничавање резултата. Клаузула ORDER BY сортира редове по једној или више колона, док клаузула LIMIT ограничава број враћених редова.

Здружена табела

Користећи наредбу JOIN, можемо да комбинујемо податке из више табела у јединиствен резултат. Постоји неколико типова придруживања, сваки са својом специфичном функцијом. Најчешћи типови су:

* Унутрашње придруживање: Враћа само редове који се подударају у обе табеле.
* Лево придруживање: Враћа све редове из леве табеле и само оне редове из десне табеле који се подударају.
* Десно придруживање: Слично левом придруживању, али враћа све редове из десне табеле.
* Спољашње придруживање: Враћа све редове из обе табеле, без обзира да ли се подударају или не.

Закључак

Увођење и извлачење података у MySQL или MariaDB су основне операције које су кључне за ефикасно коришћење базе података. Користећи наредбе INSERT и SELECT, можемо лако да управљамо подацима и добијемо потребне информације. Осим тога, условљавање, сортирање и ограничавање резултата омогућавају нам да прецизирамо и контролишемо наш упит. Познавање ових техника је незаменљиво за успешно управљање базама података и добијање најбољих резултата од наших података.

Често постављана питања

1. Која је разлика између наредби INSERT и INSERT ... SELECT?

Наредба INSERT убацује један ред у табелу, док наредба INSERT ... SELECT убацује више редова у табелу из друге табеле или резултата упита.

2. Како спречити уношење дуплираних редова?

Можемо користити кључну реч UNIQUE приликом креирања табеле или користити наредбу INSERT IGNORE.

3. Како сортирати резултате по колони?

Користимо клаузулу ORDER BY након наредбе SELECT. На пример, SELECT * FROM employees ORDER BY salary DESC; ће сортирати резултате у опадајућем редоследу према заради.

4. Како ограничити број враћених редова?

Користимо клаузулу LIMIT након наредбе SELECT. На пример, SELECT * FROM employees LIMIT 10; ће вратити само првих 10 редова.

5. Шта је придруживање?

Придруживање је операција комбиновања података из више табела у јединствен резултат. Користимо наредбу JOIN да бисмо придружили табеле.

6. Који су различити типови придруживања?

Постоји неколико типова придруживања, укључујући унутрашње придруживање, лево придруживање, десно придруживање и спољашње придруживање.

7. Како увести дате?

Да бисмо унели тренутни датум и време, можемо користити функцију NOW(). На пример, INSERT INTO appointments (date_time) VALUES (NOW());.

8. Како избећи SQL инјекцију?

SQL инјекција је напад у коме нападач уноси штетне SQL наредбе у упит. Да бисмо је избегли, требало би да користимо параметризоване упите и валидирамо улазне податке.