Categories
Câu lệnh SQL

Lệnh Insert trong SQL

Khái niệm và vai trò của lệnh Insert trong ngôn ngữ truy vấn mang tính cấu trúc SQL:

Thao tác chèn Insert into trong SQL khá quen thuộc với đại đa số người dùng sử dụng ngôn ngữ SQL. Insert khá đơn giản, dễ sử dụng trong hệ thống CSDL.
Trong bảng hệ thống dữ liệu máy tính, để xử lý chúng người dùng cần trang bị cho mình các kiến thức về IT để xử lý CSDL nhanh gọn và hiệu quả nhất. Tuy nhiên đối với ngôn ngữ SQL, người dùng không cần tìm hiểu những cấu trúc quá phức tạp mà vẫn có thể xử lý hết đống tài liệu còn dang dở vào cuối tuần một cách nhanh và hiệu quả nhất. SQL với nhiều câu lệnh như Inner Join, Update, Union, Insert into,..sẽ hỗ trợ đắc lực cho khách hàng hoàn thành công việc của mình. Lệnh Insert into trong SQL với vai trò chèn dòng khá phổ biến giúp người dùng bổ sung CSDL còn thiếu trong bảng với câu lệnh đơn giản, dễ thực hiện, hạn chế khách hàng tạo bảng dữ liệu nhưng sau đó muốn bổ sung thêm.

Cú pháp Insert cột dòng, bổ sung dữ liệu.

Với cấu trúc khá đơn giản, dễ nhớ, lệnh Insert into với cấu trúc:
INSERT INTO TABLE_TEN (cot1, cot2, cot3,…cotN)] VALUES (giatri1, giatri2, giatri3,…giatriN);


Cho phép thêm dữ liệu vào trong bảng hệ thống CSDL database quan hệ, giúp người dùng bổ sung những thông tin còn thiếu của dữ liệu nếu trong quá trình tạo lập vô ý quên hay cập nhật lại dữ liệu, đảm bảo CSDL được đầy đủ nhất và kết quả chính xác nhất. Khi dung lệnh Insert into thì số lượng các cột và giá trị trong câu lệnh phải bằng nhau, và các giá trị trong câu lệnh phải thoã mãn những ràng buộc, nguyên tắc trong bảng dữ liệu. Những ràng buộc của CSDL có thể là định dạng cấu trúc như dữ liệu kiểu chuỗi và datetime cần có dấu “”, dữ liệu kiểu số thì không.

lenh-insert
ví dụ trong cấu trúc dữ liệu sql (insert into)


Lệnh Insert into có thể chèn cột hoặc chèn hàng trong bảng tuỳ vào nhu cầu của người dùng và CSDL, nếu chèn thêm số cần có dấu nháy đơn, chèn thêm dữ liệu chuỗi có dấu nháy đơn và dấu “/” đằng trước nếu không sẽ bị lỗi trong câu lệnh. Insert into là một lệnh nhỏ trong SQL nhưng đóng vai trò khá quan trọng trong công tác xử lý dữ liệu của người dung. Nếu người dùng sành sỏi những cấu trúc lệnh nhỏ trong bảng ngôn ngữ máy tính thì làm việc với CSDL chỉ là “chuyện vặt”.
Insert into cũng có thể di chuyển dữ liệu trong bảng này qua bảng khác một cách mẫu mực và an toàn, cho phép người nhiều người dùng cùng thực hiện, không gây xáo trộn schema, có thể rollback tuy nhiên do dung transaction log nên khi áp dụng với lượng dữ liệu lớn thì nó thực hiện rất chậm.

Cú pháp Insert trong SQL được sử dụng nhiều trong lập trình backend.

Lập trình backend là lập trình nền tảng web phía Server bằng cách sử dụng ngôn ngữ phía Server mà cụ thể là PHP để tạo ra hệ thống quản lý nội dung động, tương tác được với giá trị cơ sở dữ liệu trong bảng. Trong lập trình backend, người ta thường dùng lệnh Insert into dữ liệu bằng PHP để thực hiện xử lý dữ liệu như mong muốn. Backend tương tác với hệ quản trị cơ sở dữ liệu quan hệ, nên những câu lệnh trong SQL sẽ được người dùng “rèn giũa” giá trị thường xuyên hơn, phục vụ yêu cầu công việc cao hơn. Có 3 cách để insert into dữ liệu bằng cách sử dụng MySQLi và PDO của PHP:
– Ví dụ sử dụng cú pháp MySQLi Object – oriented như sau:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// Tạo kết nối
$conn = new mysqli(‘localhost’, ‘root’, ‘vertrigo’, ‘FreetutsDemo’);

 

// Kiểm tra kết nối
if ($conn->connect_error) {
die(“Kết nối thất bại: ” . $conn->connect_error);
}

// Câu SQL Insert
$sql = “INSERT INTO News (title, content)
VALUES (‘tieu de’, ‘noi dung’)”;

// Thực hiện thêm record
if ($conn->query($sql) === TRUE) {
echo “Thêm record thành công”;
} else {
echo “Lỗi: ” . $sql . “<br>” . $conn->error;
}

// Ngắt kết nối
$conn->close();

   

– Ví dụ về sử dụng cú pháp MySQLi Procedural như sau:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// Tạo kết nối
$conn = mysqli_connect(‘localhost’, ‘root’, ‘vertrigo’, ‘FreetutsDemo’);

 

// Kiểm tra kết nối
if (!$conn) {
die(“Kết nối thất bại: ” . mysqli_connect_error());
}

// Câu SQL Insert
$sql = “INSERT INTO News (title, content)
VALUES (‘tieu de’, ‘noi dung’)”;

// Thực hiện thêm record
if (mysqli_query($conn, $sql)) {
echo “Thêm record thành công”;
} else {
echo “Lỗi: ” . $sql . “<br>” . mysqli_error($conn);
}

// Ngắt kết nối
mysqli_close($conn);

– Ví dụ sử dụng cú pháp PDO như sau:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
try {
// Tạo kết nối
$conn = new PDO(“mysql:host=localhost;dbname=FreetutsDemo”, ‘root’, ‘vertrigo’);

 

// Cấu hình exception
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

// Câu SQL Insert
$sql = “INSERT INTO News (title, content)
VALUES (‘tieu de’, ‘noi dung’)”;

// Thực hiện thêm record
$conn->exec($sql);

echo “Thêm record thành công”;
}
catch (PDOException $e) {
echo $e->getMessage();
}

// Ngắt kết nối
$conn = null;

Kết luận về cú pháp Insert trong ngôn ngữ lập trình có cấu trúc SQL:

Nói chung, mỗi ngôn ngữ cấu trúc đều được hỗ trợ những câu lệnh khác nhau nhằm giải quyết nhu cầu xử lý, phân tích dữ liệu của người dùng. Các cú pháp lệnh có thể đơn giản nhưng cũng có thế khá phức tạp, đối với ngôn ngữ SQL người dùng không cần thuộc lòng các câu lệnh cũng có thể giải quyết hệ thống CSDL khổng lồ một cách triệt để. Vì tính đơn giản, tiện dụng, dễ thực hiện, SQL được dùng thường xuyên trong ngôn ngữ lập trình, lệnh Insert into có giá trị rất quan trọng trong việc tạo ra website động, thu hút khách hàng và làm phong phú thêm cho nội dung.


dong-lenh-sql
insert into

Ngôn ngữ lập trình đóng vai trò quan trọng trong thiết kế website, và giá trị tạo nên lợi ích doanh nghiệp được người dùng lẫn khách hàng hết sức chú trọng, việc thành thạo ngôn ngữ máy tính và các câu lệnh của nó khiến bạn xử lý dữ liệu nhẹ nhàng hơn. Hy vọng rằng với các kiến thức và ví dụ bổ ích trên có thể giúp bạn phần nào trong công việc

Categories
Hệ quản trị SQL

Database là gì?

Database là gì? Khái niệm cơ bản và ví dụ về hệ thống cơ sở dữ liệu có cấu trúc

1. Khái niệm về cơ sở dữ liệu Database:

Database là gì? Database là thuật ngữ được xưng hô thường xuyên trong Ngôn ngữ SQL và phổ biến đối với những người làm về thông tin công nghệ, dữ liệu.

2. Ví dụ cơ bản về cơ sở dữ liệu Database:

Database hay còn gọi là hệ thống cơ sở dữ liệu có cấu trúc, được lưu trữ trên một thiết bị như băng, đĩa, usb, ổ cứng,… được duy trì dưới dạng tệp tin trong hệ điều hành máy tính hay trong hệ quản trị cơ sở dữ liệu. Chúng ta thường bắt gặp thuật ngữ này khi làm việc với máy tính và phần mềm, dữ liệu với nhiều ưu điểm và nhược điểm khác nhau.

Hệ thống Database rất quan trọng trong công tác làm việc với dữ liệu, nếu không có Data lưu trữ thì các thao tác với dữ liệu cũng không thể thực hiện được.

Nhờ Database mà các công ty về IT hay SEO marketing có thể tối ưu hóa dữ liệu một cách dễ dàng hơn.

Xem thêm tại: https://sites.google.com/view/congtyseo

Ưu và nhược điểm của hệ thống CSDL Database.

1. Ưu điểm chung về hệ Cơ sở dữ liệu database trong công việc và đời sống:

Đối với một hệ thống CSDL database, việc lưu trữ thông tin sẽ không bị trùng lặp, đảm bảo tính nhất quán và toàn vẹn của dữ liệu. Việc loại bỏ trùng lặp giúp người dùng tiết kiệm thời gian và xử lý dữ liệu không bị sai sót. Dữ liệu được lưu trữ trên database sẽ được truy xuất theo nhiều cách khác nhau và nhiều người có thể sử dụng được. CSDL database có thể được lưu trữ nhiều dạng như bản ghi, trường, dữ liệu có mối quan hệ với nhau và rất dễ truy cập, quản lý, cập nhật.

2. Những nhược điểm quan trọng cần phải biết về hệ thống CSDL Database là gì?

Bên cạnh những ưu điểm của CSDL Database, nhược điểm cũng khá quan trọng để người dung lưu ý cho việc lưu trữ của mình. Vì CSDL database mang tính chất chia sẻ dùng chung nên tính chủ quyền có thể bị xâm phạm. Việc khai thác dữ liệu không được bảo mật bởi ai cũng có thể khai thác được. Bên cạnh đó, việc tranh chấp dữ liệu là không thể tránh khỏi nếu như người quản trị không cung cấp quyền ưu tiên khai thác hay truy cập cho người dùng. Ngoài ra, khả năng thất thoát, mất mát CSDL database cũng khá cao khi sự cố xảy ra, nhất là việc hư hỏng thiết bị lưu trữ. Những nhược điểm này khiến người dung khá lo lắng về hệ thống CSDL Database, có được chúng đã khó, quản trị chúng càng khó hơn, vì vậy cần có những biện pháp bảo mật thích hợp, hoặc sao lưu dữ liệu đề phòng rủi
ro.

Các dạng Cở sở dữ liệu database:

CSDL database được phân loại thành nhiều dạng khác nhau, dạng file, dạng CSDL data quan hệ, CSDL data hướng đối tượng và CSDL data bán cấu trúc. Chúng có những chức năng khác nhau phục vụ nhu cầu khác nhau của dữ liệu người dùng, dữ liệu và công việc.

Đôi nét đặc trưng về hệ quản trị CSDL MySQL.

Hệ quản trị CSDL MySQL là hệ quản trị CSDL phổ biến và rộng rãi trên thế giới, MySQL khá được ưa chuộng bởi tốc độ xử lý cao, dễ sử dụng và tương thích với hầu hết các hệ điều hành thông dụng như Window, Linix,…Dù là người không sành IT vẫn có thể sử dụng được hệ quản trị này. MySQL được ứng dụng nhiều trong website, kết hợp với ngôn ngữ lập trình PHP để xây dựng các ứng dụng website động, taọ sự thu hút và bắt mắt cho page thêm sống động và chuyên nghiệp hơn.

Tính bảo mật của hệ quản trị cơ sở dữ liệu MySQL như thế nào ?

Bảo mật của hệ quản trị MySQL rất cao, khi sử dụng chúng cho các truy cập CSDL database trên Internet sẽ đảm bảo quyền lợi và bảo mật dữ liệu cho khách hàng, nhất là trong các chiến dịch đầu tư website, giữ an toàn và hạn chế rủi ro của hacker lên chiến lược kinh doanh trong quá trình sử dụng.

Hệ quản trị CSDL database có nhiều đóng góp tích cực trong việc hạn chế dư thừa dữ liệu, ngăn cản truy cập dữ liệu bất hợp pháp, cung cấp các khả năng lưu trữ lâu dài cho các đối tượng và cấu trúc dữ liệu, cho phép suy dẫn dữ liệu sử dụng Rules, cung cấp giao diện đa người dùng, thuận lợi cho việc biểu diễn mối quan hệ phức tạp giữa các dữ liệu, đồng thời đảm bảo tính ràng buộc
toàn vẹn dữ liệu, cung cấp các thủ tục sao lưu và phục hồi,…

Các đối tượng sử dụng CSDL database.

Một số dữ liệu nhỏ mang tính chất cá nhân thì chỉ cần cá nhân sử dụng và quản trị, nhưng đối với các CSDL database lớn như quản lý tài chính doanh nghiệp, ngân hàng, quản lý thuốc bệnh viện,…cần có nhiều người tham gia xây dựng, duy trì và phát triển CSDL, vậy ai là người sử dụng trực tiếp, ail à người quản lý gián tiếp hệ thống CSDL?

Đối tượng trực tiếp quản lý hệ thống CSDL database cần một nhân sự quản trị CSDL, chịu trách nhiệm đối với nguồn dữ liệu này, bảo vệ an toàn và backup thông tin khi có sự cố… Người thiết kế CSDL database chịu trách nhiệm trong việc xác định dữ liệu nào cần lưu trữ trong cấu trúc của CSDL, hoặc lựa chọn cách biểu diễn lưu trữ phù hợp, khảo sát ý kiến người dung khi sử dụng CSDL database và tiến hành phân tích hệ thống. Người dung cuối chỉ cần truy cập CSDL và thực hiện các thao tác xử lý, thống kê, báo cáo, cập nhật,… Mảng phân tích hệ thống và lập trình ứng dụng sẽ xác định rõ yêu cầu của người sử dụng cuối, sau đó đưa ra khung hình cho từng đối tượng người sử dụng, quản lý bao gồm các bước như thực
hiện yêu cầu thông qua lập trình, test, chữa lỗi và khắc phục thiết sót, biên tập tài liệu hướng dẫn sử dụng và bảo trì hệ thống.

Đối với đối tượng gián tiếp quản lý hệ thống CSDL database thường chịu trách nhiệm phân tích, phát triển và thực hiện, tạo ra môi trường hệ thống và phần mềm của hệ quản trị CSDL những không thao tác trực tiếp trên hệ CSDL database này. Nhóm đối tượng này chính là người phân tích, nhà phát triển và người kiểm tra,
bảo trì hệ thống.

Categories
Câu lệnh SQL

Mệnh đề having trong SQL

Như bạn đã biết, SQL là ngôn ngữ máy tính mang tính truy vấn cấu trúc, được dùng để tạo lạp, xử lý trên một hệ CSDL quan hệ, trong đó có nhiều lệnh như Select, Insert, Update, Merge, Delete, Truncate, Join. Trong đó Select là lệnh thường xuyên được dùng để thao tác với dữ liệu trên bảng nhất.

Khái niệm Having trong SQL

Select bao gồm các từ khoá liên quan như From, Where, Group By, Having, Order by, cùng phối hợp để xử lý CSDL cho người dùng. Trong bài viết này, chúng ta sẽ đề cập đến câu lệnh having SQL – mệnh đề having cho phép xác định các điều kiện lọc nhóm kết quả nào sẽ xuất hiện trong kết quả cuối cùng. Hầu hết các câu lệnh, mệnh đề having trong SQL rất dễ thiết lập, người dùng không cần nhớ kỹ từng chi tiết mà vẫn có thể thao tác trên dữ liệu một cách dễ dàng.

Hàm Having trong ngôn ngữ lập trình có cấu trúc SQL

Như đã đề cập, having trong sql cho phép lọc nhóm kết quả nào sẽ xuất hiện trong kết quả cuối cùng của bảng ghi, mệnh đề Where đặt điều kiện trên các cột đã lựa chọn trong khi having sql lại đặt các điều kiện trên các nhóm đã được tạo ra từ mệnh đề Group By. Điều này đồng nghĩa với việc Having luôn đi sau Group By trong một truy vấn SQL, sau đó Order by mới sắp xếp dữ liệu theo thứ tự như người dùng mong muốn.
sql having

Cú pháp thực hiện hàm having trong ngôn ngữ có cấu trúc SQL:

Cú pháp hàm having trong sql sẽ có cấu trúc như sau:
SELECT cot1, cot2
FROM bang1, bang2
WHERE [ cac_dieu_kien ]
GROUP BY cot1, cot2
HAVING [ cac_dieu_kien ]
ORDER BY cot1, cot2

Ví dụ ta có bảng “HOCPHI” được diễn giải như sau:

ID TEN TUOI MONHOC HOCPHI
01 VIET 20 CNTT 5.000.000
02 HUY 21 TC 4.500.000
03 UYEN 19 KT 3.000.000
04 KHANH 22 QTKD 3.500.000
05 NHUNG 23 TCNK 4.000.000
06 QUYNH 21 TCDN 3.500.000

Muốn lọc ra học viên có TUOI >20, HOCPHI > 3.000.000 và sắp xếp ID theo thứ tự tăng dần thì ta sử dụng cú pháp sau:
SELECT ID, TEN, TUOI, MONHOC, HOCPHI
FROM HOCPHI
WHERE TUOI>20
GROUP BY SUM(HOCPHI)
HAVING SUM(HOCPHI)>3000000
ORDER BY ID ASC
Khi đó, ta có bảng kết quả sau:

ID TEN TUOI MONHOC HOCPHI
02 HUY 21 TC 4.500.000
04 KHANH 22 QTKD 3.500.000
05 NHUNG 23 TCNK 4.000.000
06 QUYNH 21 TCDN 3.500.000

Tuy nhiên, để có được bảng kết quả này buộc chúng ta phải sử dụng group by having để cho ra cột SUM(HOCPHI) để có thể thực hiện đầy đủ cú pháp trên. Bảng HOCPHI không có học viên nào học 2 môn nên dùng Group by vẫn cho ra kết quả học phí như ban đầu, sau khi Group by, ta sẽ có bảng trung gian:

ID TEN TUOI MONHOC SUM(HOCPHI)
01 VIET 20 CNTT 5.000.000
02 HUY 21 TC 4.500.000
03 UYEN 19 KT 3.000.000
04 KHANH 22 QTKD 3.500.000
05 NHUNG 23 TCNK 4.000.000
06 QUYNH 21 TCDN 3.500.000

 

Một ví dụ khác về hàm Having trong SQL:

Để dễ hiểu hơn về cách dùng lệnh having trong sql, chúng tôi sẽ đưa ra một ví dụ về lọc nhân viên trong bản ghi có độ tuổi lớn hơn hoặc bằng hai lần như sau:

– Ví dụ, ta sẽ có một bảng NHANVIEN có các bản ghi như dưới đây:

 

ID TEN TUOI DIACHI LUONG
12 Trinh 32 Binhdinh 2000.00
3 Diep 25 Hanoi 1500.00
4 Lai 23 Hanam 2000.00
5 Thuy 25 Hue 6500.00
6 Nam 27 Danang 8500.00
7 Lan 22 HCM 4500.00
8 Dao 24 Hanoi 10000.00

 

– Bước tiếp theo, ta tiến hành sử dụng cú pháp theo hướng dẫn như trên để lọc nhân viên có độ tuổi lớn lớn hoặc bằng hai như sau:

SQL > SELECT ID, TEN, TUOI, DIACHI, LUONG

FROM NHANVIEN

GROUP BY tuoi

HAVING COUNT(tuoi) >= 2;

–  Ngay sau đó, kết quả trả về chúng ta nhận được sẽ hiển thị như sau là:

 

ID TEN TUOI DIACHI LUONG
2 Diep 25 Hanoi 1500.00

Một số lưu ý khác khi sử dụng mệnh đề having

Trên đây là hướng dẫn các bạn sử dụng lệnh having sql. Nên chú ý sự khác biệt giữa mệnh đề having với mệnh đề where để thực hành cho đúng với yêu cầu. Sql ra đời khá lâu nhưng nó vẫn được sử dụng nhiều trong các doanh nghiệp và không có dấu hiệu bị lạc hậu bởi những ngôn ngữ khác xuất hiện sau này. 

 

Ngoài ra, having trong sql còn nhiều sức mạnh khác khá phức tạp, đóng vai trò quan trọng trong công tác xử lý, quản lý và sử dụng CSDL, hỗ trợ thao tác cặn kẽ cho người dùng. Chúng ta cũng có thể dùng câu lệnh left join trong sql để sử dụng những chức năng tuyệt vời của nó trong việc xử lý, thao tác dữ liệu. Nếu có thể nắm vững cách sử dụng Having, người dùng sẽ không phải lo lắng với hàng tá CSDL quan hệ trên máy tính.

Kết luận

Do đó, để thành thạo hơn trong sử dụng sql, hay có kiến thức sâu hơn về hàm having trong sql bạn nên học một khóa học chuyên về sql để được hướng dẫn kỹ hơn cách sử dụng các lệnh trong sql từ cơ bản đến nâng cao.

Categories
Câu lệnh SQL

Cú pháp mệnh đề left join trong sql

Nếu ai đã quen với hàng tá thông tin được trả về và cần phải xử lý hằng ngày trên máy tính thì không xa lạ gì đối với SQL. SQL là ngôn ngữ truy vấn mang tính cấu trúc, khá đơn giản và được sử dụng phổ biến trong hệ quản trị CSDL quan hệ. Đối với những ai không có thời gian học thêm, tìm tòi những ứng dụng trong ngôn ngữ mới thì có thể dùng SQL cho các thao tác dữ liệu trên máy, vừa hiệu quả, nhanh chóng lại tiện dụng, đặc biệt không cần nhớ cấu trúc thuật toán, vẫn có thể thực hiện dễ dàng.

 

1. Câu lệnh Left join trong ngôn ngữ lập trình sql là gì?

Left join là một trong những câu lệnh phổ biến, thường gặp đối với ngôn ngữ SQL. Ngôn ngữ chung mà bất cứ hệ thống cơ sở dữ liệu quan hệ nào cũng cần có.

Join được hiểu là một mệnh đề trong SQL. Sử dụng để kết nối từ hai hay nhiều bảng trong cơ sở dữ liệu với nhau. Khi bạn muốn tìm các cột dữ liệu từ nhiều bảng khác nhau để trả về trong cùng một kết quả thì bạn cần dùng Join và SQL sẽ đưa ra một bảng có kết quả dữ liệu tạm thời từ JOIN.

Từ đó định nghĩa của JOIN, ta có thể hiểu left join trong sql là kiểu Join trả về tất cả các giá trị từ bảng bên trái, công với các giá trị trong bảng bên phải, ngay cả khi không có giá trị so khớp nào trong bảng bên phải. Nếu không có dữ liệu sẽ là NULL.

Một số điều lưu ý cần biết cơ bản về Left join trong SQL:

Khi dùng lệnh left join sql, kết quả trả về sẽ cộng gộp tất cả các giá trị của các hàng từ bảng bên trái vào bảng bên phải cộng với các giá trị được so khớp từ bảng bên phải, trường hợp không so khớp sẽ trả về NULL cho các hàng.

Cú pháp như sau:

SELECT bang1.cot1, bang2.cot2…FROM bang1LEFT JOIN bang2ON bang1.field_chung = bang2.field_chung;
Từ đó ta có ví dụ diễn giải bảng THONGTIN như sau:

ID TEN TUOI MONHOC HOCPHI
01 VIET 20 CNTT 5.000.000
02 HUY 21 TC 4.500.000
03 UYEN 19 KT 3.000.000
04 KHANH 22 QTKD 3.500.000
05 NHUNG 23 TCNK 4.000.000
06 QUYNH 21 TCDN 3.500.000

Và bảng MUONSACH:

STT TEN NGAYMUON SINHVIEN_ID SOTIEN
1001 VIET 18/5/2017 01 300
1002 HUY 19/5/2017 02 320
1003 HUY 19/5/2017 02 330
1004 KHANH 20/5/2017 04 400
1005 NHUNG 21/5/2017 05 500

Khi dùng sql left join tổng hợp hai bảng từ THONGTIN qua MUONSACH, ta có cấu trúc:
SQL> SELECT ID, TEN, SOTIEN, NGAYMUON FROM THONGTIN LEFT JOIN MUONSACH ON THONGTIN.ID = MUONSACH.SINHVIEN_ID;
Và kết quả sẽ là:

ID TEN SOTIEN NGAYMUON
01 VIET 300 18/5/2017
02 HUY 320 19/5/2017
02 HUY 330 19/5/2017
03 UYEN NULL NULL
04 KHANH 400 20/5/2017
05 NHUNG 500 21/5/2017
06 QUYNH NULL NULL

 

Một ví dụ về câu lệnh left join trong mySQL:

Câu lệnh của Left join trong mySQL được thực hiện như sau:

SELECT cot1, cot2,… cotn

FROM bang1

LEFT JOIN bang2

ON bang1.cot_chung = bang2.cot_chung;

 

Chú giải:

  • cot1, cot2, … cotn: là những tên cột cần hiển thị ở kết quả truy vấn và được ngăn cách nhau bởi dấu phẩy (,)
  • bang1, bang2: là tên các bảng chứa các dữ liệu để lấy khi truy vấn.
  • cot_chung: là cột chứa khóa ngoại tham chiếu từ bang1 đến cột có được trong bang2 hoặc tên cột khóa ngoại tham chiếu từ bang2 đến cột có trong bang2.

3. Ví dụ về câu lệnh left join khi lập trình ngôn ngữ sql:

Để giúp các bạn dễ hiểu về lý thuyết như trên, dưới đây tôi sẽ đưa ra ví dụ sau: mối quan hệ trong hai bảng được chỉ định bởi customer_id khóa (là khóa chính trong bảng khách hàng và là khóa ngoại trong bảng đơn hàng. Nếu chúng ta chỉ muốn thông tin về các đơn đặt hàng vào bảng khách hàng bao gồm khách hàng đặt hàng hay không đặt hàng, chúng ta sẽ sử dụng một liên kết bên trái. Trong một bảng kết nối bên trái sẽ trả về tất cả các bảng ghi từ bảng 1 và bất kỳ bản ghi nào phù hợp từ bảng2. NULL sẽ là kết quả không phù hợp.

SELECT first_name, last name, order_date, order_amount

FROM khách hàng C

LEFT JOIN đơn hàng 0

ON C. customer_id = đơn hàng. ID khách hàng;

Chú ý: từ khóa left join trả về tất cả các bản ghi từ bảng bên trái (bảng khách hàng), ngay cả khi không có kết quả phù hợp với thông tin trong bảng bên phải (đơn hàng).

Bốn phép nối SQL cơ bản liên liên kết các phần dữ liệu khác nhau lại với nhau vì thế để lấy được dữ liệu từ cơ sở hay kho dữ liệu là rất khó. Nhưng khi ta có sự hiểu biết cơ bản về nó thì việc thực hiện này rất dễ và trong tầm tay.

SQL là ngôn ngữ truy vấn dữ liệu, nó được ra đời để hỗ trợ thêm cho web service. Hiện nay, nhiều doanh nghiệp dùng nhiều đến nó để quản trị nhân viên hoặc khách hàng của họ. Họ sử dụng cơ sở dữ liệu này để lưu trữ thông tin để bảo mật thông tin trong sự tuyệt đối tránh trường hợp rủi ro như bị mất hay sửa, xóa,… những thông tin. 

Sử dụng SQL hiện đang phổ biến, có được sự hiểu biết hơn về ứng dụng này, sẽ giúp các bạn làm việc hiệu quả, nhanh chóng trong giải quyết công việc liên quan về công nghệ thông tin, máy tính cũng như tạo cơ hội thăng tiến trong công việc. 

Hy vọng qua bài đọc này sẽ giúp các bạn có được nhiều thông tin, sự hiểu biết hơn về ứng dụng phổ biến này cũng như những thuật ngữ tin học hiện nay. Đặc biệt, giúp bạn thành thạo hơn trong việc truy vấn và sử dụng câu lệnh thật tốt. Cuối cùng, chúng tôi chúc các bạn học tốt và hoàn thành công việc hiệu quả.

Categories
Câu lệnh SQL

Mệnh đề GROUP BY trong SQL

Câu lệnh group by trong sql được dùng để kết hợp với lệnh SELECT để sắp xếp dữ liệu đồng nhất vào các nhóm, hàm này trong ngôn ngữ sql đi sau mệnh đề WHERE trong một lệnh SELECT và ở trước mệnh đề ORDER BY. SQL và những mệnh đề như GROUP BY ngày càng đóng vai trò quan trọng không kém đối với hệ quản trị CSDL.

Biết cách sử dụng GROUP BY khi dùng ngôn ngữ SQL là một điều cần thiết.

 
Không có một câu lệnh nào là thừa thải của một hàm CSDL, chỉ là bạn chưa cần thiết dùng đến chúng hoặc chưa áp dụng đúng mục đích. Mệnh đề group by sql được thêm vào bởi vì các hàm tập hợp (như SUM) trả về một tập của các giá trị ở cột đó mỗi khi chúng được gọi, nhờ lệnh GROUP BY trong sql, ta có thể tính tổng của các giá trị theo từng nhóm lẻ tại cột.
Cách thực hiện nội dung như sau:

SELECT tên_cột, SUM (tên _cột) FROM tên_bảng GROUP BY tên_cột
 

Ví dụ ta có bản ghi “HOCPHISINHVIEN” như sau:

ID TEN TUOI MONHOC HOCPHI
1 Hoang 21 CNTT 4
2 Nhu 22 TCNH 5
3 Hung 21 CK 3
4 Hoang 21 CK 3
5 Hung 21 CNTT 4
6 Ngan 22 TCNH 5

 
Nếu muốn biết tổng số học phí của từng sinh viên, ta buộc phải dùng truy vấn như sau:
SQL> SELECT TEN, SUM(HOCPHI) FROM HOCPHISINHVIEN
GROUP BY TEN;
Khi đó sẽ cho ra một bảng ghi nội dung mới như sau:

TEN SUM(HOCPHI)
Hoang 7
Nhu 5
Hung 7
Ngan 5

 
Cách sử dụng mệnh đề nhìn chung cũng khá đơn giản, chỉ cần nắm rõ cú pháp, bạn cũng không cần phải thuộc nằm lòng mới có thể sử dụng được, đây cũng có thể được xem là một lợi thế của người tạo ngôn ngữ truy vấn SQL.

Một số hàm tổng hợp thường đi kèm với Group by khi lập trình SQL.

Theo công thức cấu trúc, group by trong sql server thường được đi kèm với một số hàm nhất định, cụ thể nhất đó là:

  • AVG: Hàm AVG trong SQL được sử dụng để tìm giá trị trung bình của một trường của các bản ghi đa dạng, khi sử dụng kèm mệnh đề group by trong sql, hàm sẽ trả về giá trị trung bình của nhóm cột.
  • COUNT: Hàm COUNT là hàm đơn giản nhất và rất hữu dụng để đếm số bản ghi, được mong đợi trả về bởi một lệnh SELECT. Khi sử dụng, mệnh đề này sẽ trả về số lần xuất hiện ở một cột.
  • MAX: Hàm MAX trong SQL được tận dụng để tìm ra giá trị lớn nhất trong một tập hợp bản ghi, người dùng có thể tìm ra được giá trị lớn nhất của tất cả các bản ghi được cung cấp bởi tên với mỗi mệnh đề group by sql server
  • MIN: Tương tự, hàm MIN trả về giá trị nhỏ nhất trong nhóm cột khi đi kèm với group by SQL.

Như vậy, nội dung về group by sql là gì thì chắc hẳn sau bài viết này bí mật đã được bật mí, người dùng có thể tự tìm hiểu cho mình biết khi nào dùng group by sql, vận dụng ngôn ngữ máy tính sẽ trở nên dễ dàng hơn khi bạn tinh thông về nó.

 

Ví dụ về câu lệnh group by để lập trình sql

Một vài ví dụ về câu lệnh group by in sql để bạn đọc có thể tham khảo.

Ví dụ 1: Lệnh group by sql Server

SELECT cot1, cot2, … cot_N,

Ham_tong (cot)

FROM bang

[WHERE dieukien]

GROUP BY cot1, cot2, … cot_N;

Chú thích:

– Cot1, cot2, … cotN: là giá trị không nằm ở hàm tổng và phải nằm ở mệnh đề GROUP BY.

– Ham_tong: có thể là các hàm như MIN, MAX, COUNT, SUM, AVG

– Bang: bảng cần lấy bảng ghi và phải có ít nhất 1 bảng thuộc lệnh FROM

– WHERE dieukien: điều kiện phù hợp đáp ứng với mệnh đề WHERE

Ví dụ 2: Cú pháp group by sql Server dùng hàm SUM. Dưới đây là ví dụ dùng hàm SUM tính tổng để trả về mã số thiết bị và tổng số lượng theo mã số thiết bị.

SELECT maso_thietbi, SUM(soluong) AS “Tong so luong”

FROM thietbi

GROUP BY maso_thietbi

Ví dụ 3: Cú pháp group by sql Server dùng hàm MIN. Cú pháp này dùng hàm MIN nhỏ nhất để cho bạn kết quả tên sản phẩm và số lượng tối thiểu của tên sản phẩm đó.

SELECT ten_sanpham, MIN(Soluong) AS “So luong it nhat”

FROM sanpham

GROUP BY ten_san pham

Ví dụ 4: Cú pháp group by SQL trong Access

SELECT fieldlist

FROM table

WHERE criteria

[GROUP BY groupfieldlist]

Chú thích:

– Fieldlist là tên của một hoặc nhiều trường cần truy xuất

– Table là tên bảng cần truy xuất các bản ghi

– Criteria là điều kiện cho mệnh đề WHERE

– Groupfieldlist là tên tối đa 10 trường được dùng để nhóm các bản ghi theo thứ tự cấp độ nhóm cao nhất đến thấp nhất.

3. Lưu ý về lệnh group by

– Mệnh đề GROUP BY phải luôn theo sau các điều kiện thuộc mệnh đề WHERE, tức sau khi viết mệnh đề WHERE xong xuống dòng đến mệnh đề GROUP BY.– Mệnh đề ORDER BY luôn theo sau mệnh đề GROUP BY nếu được sử dụng ở trong cú pháp truy vấn dữ liệu.

Trên đây là những chia sẻ của chúng tôi về câu lệnh group by thuộc ngôn ngữ sql, một lệnh được sử dụng kết hợp với mệnh đề WHERE để gom nhóm trong sql các dữ liệu giống nhau. Hy vọng từ những thông tin cú pháp trên bạn có thể học tập, thực hành với kết quả sử dụng ngôn ngữ SQL tốt hơn. 

 

Categories
Hệ quản trị SQL

Liệu big data có đang thiếu tính bảo mật?

Ở các bài viết trước, chúng ta đã được tìm hiểu về các câu truy vấn SQL hay các bài viết về công nghệ, SEO (search engine optimation) và digital marketing. Ở bài viết này, chúng tôi sẽ nói về một lĩnh vực khá nổi trong những năm gần đây – Big Data, hay còn gọi là dữ liệu lớn. Bài viết này chỉ tập trung nói về tính bảo mật của lĩnh vực này.

Lưu ý rằng bài viết không nói cụ thể về cách sử dụng SQL để lấy thông tin từ dữ liệu lớn.

bảo mật

Tính bảo mật cho big data

Khi việc giữ tính bảo mật cho big data không còn là điều mới mẻ, liệu các công ti cung cấp dịch vụ này có đang bắt kịp với những hiểm họa mạng mới nhất chưa? Từ virus với tống tiền, có rất nhiều phần mềm độc hại và chương trình có thể hack, xóa hay tống tiền dữ liệu của bạn. Có một vài lĩnh vực mà những nhà cung cấp bảo mật cho big data cần phải phát triển bao gồm tống tiền, lỗ hổng trong hệ thống bảo mật Hadoop, và các chính sách dữ liệu của chính công ty. Sự tin tưởng của khách hàng là một nhu cầu quan trọng và đang gia tăng trong giao dịch kinh doanh trục tuyến. Giữ an toàn cho dữ liệu từ các mối đe dọa sẽ giúp khách hàng yên tâm rằng thông tin của họ an toàn với công ty mà họ đang giao dịch cùng.

 

Chỉ mới 4 năm về trước, các CEO, từ các công ty startup hay đến các doanh nghiệp có tên tuổi, ít phải lo lắng hơn về vấn đề tin tưởng trong kinh doanh- chỉ 37%. Đến năm 2016, hầu hết các công ty đều tin rằng dữ liệu được an toàn đồng nghĩa với sự tin tưởng của khách hàng. Sau đây là là 3 mối đe dọa hàng đầu đối với tính riêng tư và bảo mật mà các công ti đang phải đối mặt.

Lỗ hổng trong hệ thống bảo mật Hadoop

Hadoop cung cấp sự phân phối dữ liệu cho các công ty cũng như các phân tích và chiến lược IoT. Tuy nhiên, nó lại chứa đựng rủi ro về bảo mật thông tin. Ba công ty lớn phân phối Hadoop đã nổi tiếng nhờ việc tạo ra những ngăn phần mềm bảo mật riêng biệt và cạnh tranh. Điều này tạo ra một loạt các vấn đề liên quan đến bảo mật, bao gồm sự không tương thích và vendor lock-in. Với các hồ dữ liệu của Hadoop, dữ liệu nguyên và không có cấu trúc cùng với dữ liệu bán cấu trúc có chất lượng không xác định sẽ giữ nguyên là không có cấu trúc cho đến khi nó được đọc.

Các chính sách về dữ liệu của công ty

Đôi khi các chính sách của một công ti lại chính là lỗ hổng bảo mật mà một hacker có thể lợi dụng để tiếp cận với các dữ liệu của bạn. Chẳng hạn, một bộ phận IT có thể bị cản trở trong việc mua hoặc triển khai công nghệ mới nhất để bảo vệ chống tội phạm mạng do các cấp quản lý phải phê duyệt một đơn đặt hàng. Trong khi chờ được phê duyệt thì an ninh mạng phải chịu các lỗ hổng và hy vọng rằng một hacker sẽ không tìm thấy và lợi dụng chúng. Nói đến động lực thì tiền là mục tiêu chính cho các hacker. Vì vậy mà một hacker không mất gì khi cứ cố gắng liên tục để thâm nhập được lớp bảo vệ dữ liệu của công ti. Một số CEO điều hành cách xa bộ phận IT của họ và không nhận ra mức độ nghiêm trọng của các lỗ hổng trong an ninh dữ liệu của mình.

Phần mềm tống tiền

Đúng như tên gọi của nó, phần mềm tống tiền nắm giữ thông tin của một công ty và chỉ trả lại khi công ty đã trả tiền chuộc. Để làm điều này, chúng có thể xóa thông tin trong ngân hàng dữ liệu của công ty hay sử dụng một phần mềm đặc biệt. Điều này có nghĩa là công ty đó không thể truy cập ngân hàng dữ liệu của chính mình mà không có sự trợ giúp của các hacker. Đôi lúc nhờ vào các phần mềm tống tiền, các hacker có thể qua được điểm yếu của Hadoop, cổng 50070 (port: 50070). Các hacker đang tìm kiếm các cài đặt HDFS mở để chúng có thể lợi dụng. Có rất nhiều hacker tay nghề cao tận dụng Internet sẵn có để tìm các thông tin dễ tấn công trên toàn cầu và lợi dụng nó. Nga đã trở nên đặc biệt nổi tiếng với những hacker “tốt” cũng như các hacker “xấu”, IE White Hat và Black Hat. Ở quốc gia này, nó được coi là có ích để có cả hai bộ kỹ năng về máy tính.

Rõ ràng là có một khoảng cách lớn giữa kiến thức về các lỗ hổng bảo mật của big data và việc thực hiện các kĩ thuật để bảo vệ các lỗ hổng đó. Khi càng lúc càng nhiều công ti trở nên trực tuyến và nhận ra rằng dữ liệu cũng cần được bảo vệ như những hệ thống máy tính khác của công ti, an ninh tổng hợp bao quát tất cả các mức độ khỏi việc bị lợi dụng vẫn còn là một bước mới nhưng rất cần thiết.

Categories
Hệ quản trị SQL

5 cách mà big data đang dần thay đổi ngành dịch vụ

Ngành dịch vụ khách hàng đã luôn dựa vào big data để cải thiện sự hài lòng của các thượng đế. Ở bài viết này, bên cạnh tính bảo mật, chúng ta sẽ nói về mặt thực tiễn của Big Data trong các ngành dịch vụ.

Nguồn sống của mọi tổ chức, dù có hướng đến dịch vụ hay không, chính là khả năng phục vụ khách hàng tốt. Cách mà bạn tương tác với khách hàng ảnh hưởng đến cách nghĩ của họ về bạn, điều có tác động đến số lượng khách hàng quen của bạn.

nganh big data

Vai trò của Big Data trong ngành dịch vụ

Dưới đây là một số cách mà big data có thể cách mạng hóa ngành dịch vụ khách hàng:

1. Truy cập vào các nguồn tài nguyên

Một nguồn tri thức nội bộ có đầy đủ câu trả lời cho những câu hỏi thường gặp sẽ là một nguồn lực tuyệt vời cho nhũng nhân viên trực điện thoại. Việc cho phép khách hàng truy cập những tài nguyên này sẽ làm giảm việc kẹt đường dây điện thoại bằng cách loại bỏ tất cả những câu hỏi cơ bản nhất mà một khách hàng thường hỏi.

Dàn nhân viên hỗ trợ có thể truy cập vào các ghi chú về một tài khoản cụ thể sẽ đối phó với một vấn đề lặp đi lặp lại dễ dàng hơn. Điều này rất có ý nghĩa với những khách hàng đang bực bội và mệt mỏi với việc lặp lại lời mình.

2. Khả năng tiếp cận sự trợ giúp

Đừng giấu giếm số điện thoại và địa chỉ email của bạn. Giấu đi cách liên lạc với bạn có thể sẽ gây ra điều ngược lại với ý muốn của bạn. Thay vì cắt giảm chi phí cho dịch vụ khách hàng, có khi bạn đang mất đi thu nhập vì khách hàng của bạn chán cảnh thiếu dịch vụ và đi tìm sự trợ giúp ở một nơi khác.

3. Cải thiện thời gian phản hồi (response time)

Có rất nhiều cách để một doanh nghiệp có thể giảm thời gian chờ đợi của khách hàng. Thí dụ, các công ti có thể có thể đầu tư ho trợ cho một trung tâm cuộc gọi lớn hơn với dàn nhân viên cần thiết để đảm đương hết số cuộc gọi.

Các công ti có thể cung cấp nhiều phương tiện trợ giúp khác, để những khách hàng kiên nhẫn hơn có thể sử dụng hỗ trợ qua email hay chat, trái ngược với những người dùng điện thoại. Điều này có nghĩa là một nhân viên hỗ trợ khách hàng có thể vừa trả lời email để hỗ trợ một khách hàng trong khi đang hỗ trợ một người khác qua điện thoại.

4. Sự đồng cảm

Cần có sự huấn luyện kĩ càng để giải quyết những vấn đề. Tính kiên nhẫn rất có ích, nhưng việc huấn luyện bài bản cũng rất cần thiết. Trong việc hỗ trợ kĩ thuật, công ty CompTIA A+ yêu cầu các nhân viên của mình không được coi các phản hồi như vấn đề riêng tư và phải sử dụng những câu hỏi mở để đạt được kết quả tốt hơn. Đối phó với khách hàng là việc khó khăn, tuy nhiên các nhân viên hỗ trợ khách hàng là những chuyên gia. Các tổ chức tốt luôn cung cấp sự huấn luyện và lí thuyết cần thiết cho những nhân viên của họ để có thể tìm được câu trả lời cho khách hàng nhanh hơn.

5. Dự đoán nhu cầu của khách hàng

Yếu tố cuối cùng cho một dịch vụ khách hàng hoàn hảo là phải dự đoán được nhu cầu của khách hàng. Nói cách khác, mục tiêu là phải cung cấp cho khách hàng những thứ mà học không thể tìm thấy ở nơi nào khác. Một dịch vụ tốt sẽ cảm thấy cần phải giúp cho khách hàng của mình cảm thấy vui lòng hơn, như là giảm phí giao hàng hay tặng cho khách hàng một món đồ miễn phí nào đó nếu lỡ có giao hàng sai. Không phải công ty nào cũng có thể cho không sản phẩm được, nhưng học có nhũng cách khác để làm cho khách hàng ngạc nhiên và hài lòng.

Categories
Hệ quản trị SQL

6 lí do bạn nên học SQL

Ngôn ngữ truy vấn có cấu trúc (Structured Query Language), hay còn được gọi là ngôn ngữ truy vấn SQL, là một ngôn ngữ lập trình đặc biệt được dùng để tương tác với cơ sở dữ liệu. Nó phân tích và hiểu các cơ sở dữ liệu bao gồm nhiều lĩnh vực dữ liệu được chứa trong các bảng.

SQL bắt đầu từ những năm 1970, các kỹ sư của IBM là Donald Chamberlin và Raymond Boyce đã thiết kế phiên bản ban đầu để thao tác và lấy dữ liệu được lưu trữ trong hệ thống cơ sở dữ liệu của công ty. Hai người tiên phong của SQL gọi SEQUEL ngôn ngữ mới của họ, mặc dù sau đó họ buộc phải thay đổi nó do các vấn đề bản quyền.

1) Khai thác dữ liệu

Học SQL sẽ cho phép bạn khai thác dữ liệu với hiệu quả cao hơn. Chỉ cần sử dụng các truy vấn cơ bản là bạn có thể xác định được dữ liệu cụ thể theo khoảng thời gian, xem sự kiện cập nhật, theo dõi hoạt động của bảng và nhiều hơn nữa. Chỉ mình điều này là đủ lý do để bạn chủ động học lập trình SQL.

2) Nhu cầu lập trình viên SQL đang tăng cao

Bạn sẽ dễ dàng tìm được việc nếu là một lập trình viên SQL.

Theo trang đăng việc Indeed.com, có nhiều công việc cho lập trình viên SQL (năm 2016) hơn bất kỳ loại ngôn ngữ lập trình khác, bao gồm cả Java, JavaScript, C +, Python, C ++ và PHP.

3) Thao tác dữ liệu

SQL đặc biệt hiệu quả trong việc thao tác dữ liệu. Bởi vì nó cho phép bạn xem dữ liệu chính xác và cách thức nó hoạt động, bạn sẽ kiểm tra và thao tác dữ liệu dễ dàng hơn. Hơn nữa, dữ liệu được lưu trữ trong SQL là động, nghĩa là bạn có thể sửa đổi và thao tác bất cứ lúc nào bằng một số truy vấn SQL cơ bản.

4) Kết hợp dữ liệu từ nhiều nguồn

Kết hợp dữ liệu từ hai nguồn trở lên có thể tốn nhiều thời gian và là một công việc khó khăn. Tuy nhiên, SQL làm cho quá trình này dễ dàng hơn bằng cách hỗ trợ “merges” đơn giản, trong đó các trường hoặc toàn bộ cơ sở dữ liệu được kết hợp.

5) Quản lý các nhóm dữ liệu lớn

Bạn vẫn đang tìm kiếm một cách thiết thực để quản lý các tập dữ liệu lớn? Các bảng tính truyền thống có thể được sử dụng để quản lý các vùng dữ liệu vừa và nhỏ, nhưng bạn sẽ cần một giải pháp khác khi xử lý hồ sơ quá lớn.

Thật may mắn, đây là một lĩnh vực mà trong đó SQL tỏa sáng: cho dù đó là 1.000 bản ghi hoặc 100 triệu, SQL được trang bị đầy đủ để quản lý các hồ dữ liệu của bạn bất chấp kích cỡ.

6) Máy chủ và Cơ sở dữ liệu

Nếu bạn đang định quản lý một máy chủ, hoặc tạo máy chủ của riêng bạn, ngôn ngữ lập trình SQL chắc chắn sẽ hữu ích. Nhiều máy chủ sử dụng các cơ sở dữ liệu như MySQL hoặc SQL Server để lưu trữ dữ liệu. Bằng cách tự làm quen với SQL và các truy vấn tương ứng của nó, bạn có thể dễ dàng điều sử dụng các web dữ liệu khác khó sử dụng hơn.

Categories
Hệ quản trị SQL

Tìm hiểu về Big Data: Data science và Data Analytics

Hãy cùng phân loại hai thuật ngữ này, sự khác nhau giữa cả hai, và ý nghĩa của nó. Dù sao thì, phân biệt được hai thuật ngữ này ngày nay là rất quan trọng. Big data đang trở nên quan trọng hơn trong thế giới của chúng ta, và có rất nhiều khía cạnh khác nhau của khái niệm này đáng để khám phá.

Nhưng trước tiên, Big Data là gì

Big data được biết đến là khối lượng dữ liệu khổng lồ mà không thể xử lý được cách bằng các kỹ thuật truyền thống. Việc xử lý big data bắt đầu với dữ liệu thô chưa được tổng hợp và không thực sự có thể lưu trữ trong bộ nhớ của một máy tính duy nhất. Mỗi ngày, big data tràn ngập các doanh nghiệp. Nó là thứ được sử dụng để phân tích thông tin chi tiết để hỗ trợ việc ra quyết định tốt hơn và lập kế hoạch chiến lược kinh doanh.

Theo trang Gartner, định nghĩa của Big Data là “Tài nguyên thông tin đa dạng cao, tốc độ cao, cần các hình thức xử lý thông tin hiệu quả và sáng tạo và có thể cho phép tăng cường quyết định, hiểu biết và tự động hóa quy trình . ” Tuy nhiên, Big data có những điểm yếu nhất định.

Data science vs data analytics:

Data Science:

Đây là một lĩnh vực bao gồm tất cả mọi thứ liên quan đến việc chuẩn bị, chọn lọc và phân tích, xử lý dữ liệu có cấu trúc và không có cấu trúc. Data science kết hợp toán học, thống kê, thu thập dữ liệu một cách thông minh, lập trình, giải quyết vấn đề, làm sạch dữ liệu, chuẩn bị và sắp xếp dữ liệu.

Đơn giản có thể nói rằng đó là sự kết hợp của một số kỹ thuật được sử dụng khi cố gắng lấy thông tin và chi tiết từ dữ liệu, nó không chỉ là những truy vấn SQL cơ bản.

Data Analytics:

Điều này liên quan đến việc áp dụng các quy trình thuật toán hoặc cơ học trong việc rút ra một cái nhìn sâu sắc. Ví dụ, tìm mối tương quan hợp lý giữa các bộ dữ liệu bằng cách chạy một số thuật toán nhất định. Data analytics được nhiều ngành sử dụng để cho phép họ đưa ra các quyết định tốt hơn và xác minh hoặc bác bỏ các mô hình và lý thuyết hiện có.

Data Analytics tập trung chủ yếu vào suy luận, đó là hành động đưa ra kết luận chủ yếu dựa vào kiến thức của nhà nghiên cứu.

Tại sao nó lại quan trọng?

Khoa học dữ liệu đóng một vai trò rất lớn trong việc nghiên cứu máy móc và trí tuệ nhân tạo. Một điều rất cần thiết trong thị trường hiện nay là có thể sàng lọc và kết nối lượng dữ liệu khổng lồ, tiếp theo là tạo các thuật toán và chức năng cho phép các thực thể ảo rút ra dữ liệu.

Phát biểu của Google, công ty gần đây đã mua lại Kaggle, một cộng đồng trực tuyến tổ chức cuộc thi tìm hiểu về khoa học dữ liệu và máy học. Thực tế, công nghệ này chính là tương lai – và Google biết điều đó. Đó là lý do tại sao hiểu được sự phân biệt giữa các thuật ngữ này là rất quan trọng.

Suy cho cùng, hai thuật ngữ này cũng không quá khó hiểu. Cả hai đều là những thám tử dữ liệu, những người phân loại các tập hợp thống kê lớn, số liệu, báo cáo, v.v … cho đến khi họ tìm thấy thông tin cần thiết mà họ đến. Cách làm và mục tiêu cuối cùng có thể khác nhau, nhưng cả hai lại không quá khác biệt.

Chúng ta đã cùng nắm bắt được ranh giới mỏng manh phân biệt hai khái niệm data science và data analytics. Nhưng đây chỉ là sự bắt đầu. Có nhiều dữ liệu hơn về hai thuật ngữ này. Và, như tôi đã nói nhiều lần trong phần này, dữ liệu rất quan trọng. Nó đã trở nên nổi bật hơn trong cuộc sống của chúng ta vì nó liên quan đến tất cả mọi thứ từ thể thao đến hẹn hò với kinh doanh đến thuốc. Việc dữ liệu quyết định hành động của chúng ta đã và đang xảy ra rồi, vì vậy không bao giờ là quá thừa khi học hỏi nhiều về Big Data ý nghĩa của nó đối với cuộc sống của bạn.

Categories
Hệ quản trị SQL

Từ excel đến ngôn ngữ truy vấn SQL

Nếu bạn sử dụng Excel tại nơi làm việc, bạn có thể thường phải bực bội với hộp thoại này:

Bạn có thể phải làm việc trên một bảng tính cực kì khó sửa chữa, nơi mà mỗi cú nhấp chuột kéo dài tới 10 giây màn hình đóng băng. Thường thì điều này là do các tập tin lớn hoặc các bảng tính có quá nhiều các công thức. Excel có thể xử lý tới một triệu hàng, nhưng khi bạn đang làm việc với một tập dữ liệu lớn hoặc thực hiện vệc phân tích nặng nề, excel sẽ chậm lại trước khi bạn tới giới hạn số hàng.

Excel có một điểm yếu khác có thể dẫn tới sự kém hiệu quả: cấu trúc của nó quá linh hoạt. Điều này có vẻ lạ – linh hoạt là một trong những lý do nhiều người yêu thích Excel.Tuy nhiên, nếu một ô có thể được thao tác một cách dễ dàng, thì việc kiểm soát toàn bộ bảng tính sẽ khó hơn. Tính linh hoạt của Excel làm cho tính tuân thủ và chính xác trong các tập dữ liệu lớn là gần như không thể. Dù bạn có cảnh giác như thế nào, bạn vẫn có thể bỏ lỡ một cái gì đó.

Tuy nhiên, có một công cụ tốt hơn cho công việc này.

Xin chào SQL

Dữ liệu bạn đang làm việc trên Excel phải đến từ đâu đó. Nơi đó là một cơ sở dữ liệu. Có bao nhiêu lượt truy cập web vào tháng 1? Tỷ lệ bỏ qua kênh thanh toán của chúng tôi cho sản phẩm mà chúng tôi vừa tung ra là gì? Đây là tất cả các truy vấn. Là một người dùng Excel, bạn có thể nghĩ đến cách bạn viết những câu hỏi này dưới dạng công thức nếu được trang bị bộ dữ liệu thích hợp.

Vậy làm thế nào để bạn trực tiếp truy vấn một cơ sở dữ liệu? Trong hầu hết các trường hợp, người ta sử dụng ngôn ngữ truy vấn SQL (viết tắt của Structured Query Language). SQL cho cơ sở dữ liệu biết bạn muốn xem dữ liệu nào và thao tác nó với phép tính. Khi bạn cảm thấy thoải mái hơn với SQL, bạn có thể di chuyển nhiều phân tích của bạn hơn vào SQL cho đến lúc mà Excel không còn là lựa chọn số 1 nữa. Cơ sở dữ liệu SQL có thể xử lý lượng dữ liệu khổng lồ mà không gặp vấn đề về hiệu năng và có cấu trúc có trật tự để bảo vệ tính toàn vẹn của dữ liệu.

Bảng tính, hãy gặp Cơ sở dữ liệu quan hệ

Cơ sở dữ liệu là một bộ sưu tập dữ liệu có tổ chức. Có rất nhiều loại cơ sở dữ liệu khác nhau, nhưng loại cơ sở dữ liệu cụ thể mà SQL có thể giao tiếp được gọi là cơ sở dữ liệu quan hệ. Cũng như một bảng tính Excel bao gồm các bảng tính, một cơ sở dữ liệu quan hệ bao gồm các bảng, như một bảng dưới đây.

Các bảng có các hàng và cột giống như bảng tính, nhưng trong một bảng, bạn không thể tương tác với từng ô riêng lẻ. Lý do là vì cơ sở dữ liệu có cấu trúc cứng nhắc. Các giá trị trong mỗi hàng được gắn với nhau như một đơn vị duy nhất. Mỗi cột phải có một tên duy nhất và chỉ có thể chứa một loại dữ liệu cụ thể.Cấu trúc linh hoạt của Excel có vẻ khá hay, nhưng bởi vì cấu trúc của cơ sở dữ liệu rất nghiêm ngặt, nên dễ bảo vệ tính toàn vẹn của dữ liệu hơn. Nói cách khác, khó xảy ra sự không nhất quán và sai sót hơn. Và điều đó có nghĩa là bạn có thể đặt lòng tin vào dữ liệu của bạn nhiều hơn.

Cách phổ biến nhất để thao tác dữ liệu trong Excel là sử dụng công thức. Công thức bao gồm một hoặc nhiều hàm cho Excel biết phải làm gì với dữ liệu trong một ô. Ví dụ: bạn có thể thêm các giá trị số bằng nhau bằng SUM (A1: A5) hoặc trung bình chúng bằng AVERAGE (A1: A5).

Tương đương trong SQL là một truy vấn. Ví dụ về một truy vấn trong bảng trên:

SELECT player_name,

hometown,

state,

weight

FROM benn.college_football_players

SELECT và FROM là hai câu lệnh SQL cơ bản. Giống như các công thức, các truy vấn bao gồm các hàm chỉ định thao tác dữ liệu. Các câu lệnh SQL cũng có thể chứa các mệnh đề, toán tử, biểu thức và một vài thành phần khác, nhưng chúng ta sẽ không đi sâu vào các chi tiết ở đây. Những gì bạn cần biết là bạn có thể sử dụng SQL để thao tác dữ liệu cũng như bạn có thể làm trong Excel.

Bạn vẫn còn lưỡng lự? Hãy tham khảo bài viết sau để biết 6 lí do bạn nên học SQL nhé.