我參加了一門關(guān)于MySQL的實訓(xùn)課程,該課程涵蓋了許多重要的主題和內(nèi)容。在這里,我將分享我的實習(xí)日記,以幫助人們了解MySQL實訓(xùn)的經(jīng)驗和學(xué)習(xí)方法。以下是我的一百個日記中的一些摘錄和總結(jié):
Day 1:我們了解了MySQL的基礎(chǔ)知識和功能,包括如何安裝和配置MySQL。在這一天的實踐中,我們創(chuàng)建了我們的第一個數(shù)據(jù)庫和表,并學(xué)習(xí)了如何添加,編輯和刪除數(shù)據(jù)。
CREATE DATABASE mydb; USE mydb; CREATE TABLE users ( id INT NOT NULL AUTO_INCREMENT, username VARCHAR(50) NOT NULL, password VARCHAR(255) NOT NULL, PRIMARY KEY (id) ); INSERT INTO users (username, password) VALUES ('john', 'pass123');
Day 13:我們學(xué)會了使用MySQL的函數(shù)和操作符來進(jìn)行查詢和篩選數(shù)據(jù)。我們使用LIKE操作符和通配符來搜尋包含特定字符的數(shù)據(jù),并學(xué)習(xí)了GROUP BY語句和聚合函數(shù),如SUM,AVG和COUNT。
SELECT COUNT(*) FROM users; SELECT username, COUNT(*) FROM users GROUP BY username HAVING COUNT(*) >1;
Day 42:在這一天的實踐中,我們了解了MySQL的存儲過程和事件。我們創(chuàng)建了一個簡單的存儲過程來添加新用戶,并在事件中安排計劃任務(wù)來執(zhí)行定期備份和維護(hù)任務(wù)。
CREATE PROCEDURE add_user (IN username VARCHAR(50), IN password VARCHAR(255)) BEGIN INSERT INTO users (username, password) VALUES (username, password); END; CALL add_user('jane', 'pa$$w@rd');
Day 77:我們進(jìn)行了一些高級MySQL的實踐,包括如何創(chuàng)建索引和優(yōu)化查詢。我們學(xué)會了如何使用EXPLAIN工具來評估查詢的性能,并使用SHOW PROCEDURE STATUS來跟蹤存儲過程的執(zhí)行時間。
ALTER TABLE users ADD INDEX username_index (username); EXPLAIN SELECT * FROM users WHERE username = 'john';
Day 100:這是我們MySQL實訓(xùn)的最后一天,我們進(jìn)行了一個項目實踐,將我們所學(xué)的知識應(yīng)用到實際的數(shù)據(jù)處理和分析中。我們從現(xiàn)有的數(shù)據(jù)集中選取了幾個關(guān)鍵數(shù)據(jù),并使用JOIN語句和子查詢來生成數(shù)據(jù)報告和分析結(jié)果。
SELECT u.username, COUNT(*) AS total, AVG(o.amount) AS avg_amount FROM orders o JOIN users u ON o.user_id = u.id WHERE o.date BETWEEN '2020-01-01' AND '2020-12-31' GROUP BY u.username;
以上只是我MySQL實訓(xùn)中的一些亮點和收獲。通過這個實踐,我不僅學(xué)會了如何使用MySQL的不同特性和函數(shù),而且學(xué)習(xí)了如何設(shè)計和優(yōu)化數(shù)據(jù)庫,以適應(yīng)不同的業(yè)務(wù)需求。我希望我的日記可以為想要學(xué)習(xí)MySQL的人們提供一些幫助和靈感。