Các phép nối trong SQL rất hữu ích để quản lý cơ sở dữ liệu. Sử dụng hướng dẫn này từ Dummies.com để tìm hiểu cách sử dụng phép nối liên hiệp SQL.

Bạn đang xem : kết hợp với tham gia sql

{“appState”: {“pageLoadApiCallsStatus”: true}, “articleState”: {“article”: {“headers”: {“createTime”: “2019-03-31T12 : 08: 36 + 00: 00 “,” Thời gian sửa đổi “:” 2019-03-31T12: 47: 02 + 00: 00 “,” dấu thời gian “:” 2022-02-24T17: 05: 10 + 00: 00 “} , “data”: {“breadcrumbs”: [{“name”: “Technology”, “_links”: {“self”: “https://dummies-api.dummies.com/v2/categories/33512”}, “slug”: “technology”, “categoryId”: 33512}, {“name”: “Lập trình & amp; Thiết kế Web”, “_links”: {“self”: “https://dummies-api.dummies.com/ v2 / category / 33592 “},” slug “:” programming-web-design “,” categoryId “: 33592}, {” name “:” SQL “,” _links “: {” self “:” https: // dummies-api.dummies.com/v2/categories/33608″},”slug”:”sql”,”categoryId”:33608}],”title”:”Cách sử dụng SQL Union Join “,” striTitle “: “cách sử dụng liên kết sql”, “slug”: “how-to-use-the-sql-union-join”, “canonicalUrl”: “”, “seo”: {“metaDescription”: “Các tham gia SQL là rất hữu ích để quản lý cơ sở dữ liệu. Sử dụng hướng dẫn này từ Dummies.com để tìm hiểu cách sử dụng phép nối liên hiệp SQL. “,” noIndex “: 0,” noFollow “: 0}, “content”: “Các phép nối SQL cực kỳ hữu ích. Không giống như các loại & lt; a href = \ “https: //www.dummies.com/programming/sql/how-to-use-a-basic-join-in-sql/ \” & gt; tham gia SQL & lt; / a & gt ;, công đoàn & lt; em & gt; gia nhập & lt; / em & gt; không cố gắng khớp một hàng từ bảng nguồn bên trái với bất kỳ hàng nào trong bảng nguồn bên phải. Nó tạo một bảng ảo mới chứa liên hợp SQL của tất cả các cột trong cả hai bảng nguồn. Trong bảng kết quả ảo, các cột đến từ bảng nguồn bên trái chứa tất cả các hàng có trong bảng nguồn bên trái. Đối với các hàng đó, tất cả các cột đến từ bảng nguồn bên phải đều có giá trị rỗng. \ R \ n \ r \ nTương tự, các cột đến từ bảng nguồn bên phải chứa tất cả các hàng trong bảng nguồn bên phải. Đối với những hàng đó, tất cả các cột đến từ bảng nguồn bên trái đều có giá trị null. Do đó, bảng kết quả từ một phép kết hợp chứa tất cả các cột của cả hai bảng nguồn – và số hàng mà nó chứa là tổng số hàng trong hai bảng nguồn. \ R \ n \ r \ nKết quả của một Bản thân phép tham gia liên hiệp SQL không hữu ích ngay lập tức trong hầu hết các trường hợp; nó tạo ra một bảng kết quả với nhiều null trong đó. Tuy nhiên, bạn có thể nhận được thông tin hữu ích từ một liên kết khi bạn sử dụng nó cùng với & lt; mã & gt; COALESCE & lt; / code & gt; biểu hiện. Hãy xem một ví dụ. \ R \ n \ r \ n Giả sử bạn làm việc cho một công ty thiết kế và chế tạo tên lửa thử nghiệm. Bạn có một số dự án đang hoạt động. Bạn cũng có một số kỹ sư thiết kế có kỹ năng trong nhiều lĩnh vực. Là một nhà quản lý, bạn muốn biết những nhân viên nào, có những kỹ năng nào, đã làm việc trong những dự án nào. Hiện tại, dữ liệu này nằm rải rác trong bảng EMPLOYEE, bảng DỰ ÁN và bảng KỸ NĂNG. \ R \ n \ r \ nBảng EMPLOYEE chứa dữ liệu về nhân viên và & lt; mã & gt; EMPLOYEE.EmpID & lt; / code & gt; là khóa chính của nó. Bảng DỰ ÁN có một hàng cho mỗi dự án mà một nhân viên đã làm việc. & lt; mã & gt; PROJECTS.EmpID & lt; / code & gt; là một khóa ngoại tham chiếu đến bảng EMPLOYEE. Bảng KỸ NĂNG thể hiện chuyên môn của từng nhân viên. & lt; mã & gt; SKILLS.EmpID & lt; / code & gt; là một khóa ngoại tham chiếu đến bảng EMPLOYEE. \ r \ n \ r \ nBảng EMPLOYEE có một hàng cho mỗi nhân viên; bảng DỰ ÁN và bảng KỸ NĂNG có không hoặc nhiều hàng. \ r \ n \ r \ nCác bảng sau hiển thị dữ liệu mẫu. \ r \ n & lt; bảng & gt; & lt; caption & gt; Bảng NHÂN VIÊN & lt; / caption & gt; \ r \ n & lt; thead & gt ; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “66 \” & gt; EmpID & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; Tên & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / thead & gt; \ r \ n & lt; tbody & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “66 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; Ferguson & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “66 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; Frost & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “66 \ “& gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \” 76 \ “& gt; Toyon & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / tbody & gt; \ r \ n & lt; / bảng & gt; \ r \ n & lt; bảng & gt; & lt; chú thích & gt; DỰ ÁN Bảng & lt; / chú thích & gt; \ r \ n & lt; thead & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “104 \” & gt; Tên dự án & lt; / td & gt; \ r \ n & lt; td width = \ “132 \” & gt; EmpID & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / thead & gt; \ r \ n & lt; tbody & gt; \ r \ n & lt ; tr & gt; \ r \ n & lt; td width = \ “104 \” & gt; X-63 Struct ur & lt; / td & gt; \ r \ n & lt; td width = \ “132 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ ” 104 \ “& gt; X-64 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \” 132 \ “& gt; 1 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “104 \” & gt; X-63 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “132 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “104 \” & gt; X-64 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “132 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “104 \” & gt; X-63 Đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “132 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “104 \” & gt; X-64 Phép đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “132 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / tbody & gt; \ r \ n & lt; / table & gt; \ r \ n & lt; table & gt; & lt; caption & gt; Bảng KỸ NĂNG& lt; / caption & gt; \ r \ n & lt; thead & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; Skill & lt; / td & gt; \ r \ n & lt; td width = \ “118 \” & gt; EmpID & lt; / td & gt ; \ r \ n & lt; / tr & gt; \ r \ n & lt; / thead & gt; \ r \ n & lt; tbody & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; Thiết kế Cơ khí & lt; / td & gt; \ r \ n & lt; td width = \ “118 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; Đang tải khí động học & lt; / td & gt; \ r \ n & lt; td width = \ “118 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; Thiết kế tương tự & lt; / td & gt; \ r \ n & lt; td width = \ ” 118 \ “& gt; 2 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; Thiết kế con quay hồi chuyển & lt; / td & gt; \ r \ n & lt; td width = \” 118 \ “& gt; 2 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; Digital Design & lt; / td & gt; \ r \ n & lt; td width = \” 118 \ “& gt ; 3 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; R / F Thiết kế & lt; / td & gt; \ r \ n & lt; td width = \ “118 \” & gt ; 3 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / tbody & gt; \ r \ n & lt; / table & gt; \ r \ nTừ các bảng, bạn có thể thấy Ferguson đã làm việc trên X-63 và X -64 thiết kế cấu trúc và có chuyên môn về thiết kế cơ khí và aerod đang tải ynamic. \ r \ n \ r \ nBây giờ, giả sử rằng, với tư cách là người quản lý, bạn muốn xem tất cả thông tin về tất cả nhân viên. Bạn quyết định & lt; a href = \ “https: //www.dummies.com/programming/sql/how-to-use-an-equi-join-in-sql/ \” & gt; áp dụng Equi-join & lt; / a & gt; vào bảng EMPLOYEE, PROJECTS và SKILLS: \ r \ n & lt; pre class = \ “code \” & gt; SELECT * \ r \ n FROM EMPLOYEE E, PROJECTS P, SKILLS S \ r \ n WHERE E.EmpID = P .EmpID \ r \ n VÀ E.EmpID = S.EmpID; & lt; / pre & gt; \ r \ nBạn có thể diễn đạt thao tác tương tự như một & lt; a href = \ “https://www.dummies.com/programming/ sql / how-to-use-an-inner-join-to-merge-sql -boards-for-html5and-css3-program / \ “& gt; internal join & lt; / a & gt; bằng cách sử dụng cú pháp sau: \ r \ n \ r \ nCả hai công thức đều cho kết quả giống nhau. \ r \ n \ r \ n \ r \ n & lt; table & gt; & lt; caption & gt; Kết quả của SQL Internal Join & lt; / caption & gt; \ r \ n & lt; thead & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; E.EmpID & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Tên & lt ; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; P.EmpID & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; ProjectName & lt; / td & gt; \ r \ n & lt ; td width = \ “90 \” & gt; S.EmpID & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Kỹ năng & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt ; / thead & gt; \ r \ n & lt; tbody & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \ “& gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \” 90 \ “& gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \” 90 \ “& gt; X-63 Cấu trúc & lt; / td & gt ; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Thiết kế Cơ khí & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-63 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Đang tải khí động học & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt ; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-64 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt ; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Thiết kế Cơ khí & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-64 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Đang tải khí động học & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt; / td & gt ; \ r \ n & lt; td width = \ “90 \” & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-63 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Tương tự Thiết kế & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Frost & lt; / td & gt; \ r \ n & lt ; td width = \ “90 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-63 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “90 \ “& gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \” 90 \ “& gt; Thiết kế con quay hồi chuyển & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-64 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Thiết kế Tương tự & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt ; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-64 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Thiết kế con quay hồi chuyển & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt ; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-63 Đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Digital Design & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-63 Đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; R / F Thiết kế & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-64 Phép đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Thiết kế Kỹ thuật số & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt ; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-64 Đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt ; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; R / F Thiết kế & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / tbody & gt; \ r \ n & lt; / table & gt ; \ r \ nSắp xếp dữ liệu này không đặc biệt thú vị. Số ID của nhân viên xuất hiện ba lần và các dự án và kỹ năng được trùng lặp cho mỗi nhân viên. Điểm mấu chốt: Các phép nối bên trong SQL không phù hợp để trả lời loại câu hỏi này. Bạn có thể đặt liên kết SQL hoạt động ở đây, cùng với một số & lt; mã & gt; SELECT & lt; / code & gt; để tạo ra một kết quả phù hợp hơn. Bạn bắt đầu với liên kết SQL cơ bản: \ r \ n \ r \ nLưu ý rằng liên kết liên hợp không có & lt; mã & gt; BẬT & lt; / mã & gt; mệnh đề. Nó không lọc dữ liệu, vì vậy mã & lt; mã & gt; BẬT & lt; / mã & gt; mệnh đề không cần thiết. Câu lệnh này tạo ra kết quả được hiển thị trong bảng sau. \ R \ n & lt; table & gt; & lt; caption & gt; Kết quả của SQL Union Join & lt; / caption & gt; \ r \ n & lt; thead & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; E.EmpID & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; Tên & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; P.EmpID & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; ProjectName & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; S.EmpID & lt; / td & gt ; \ r \ n & lt; td width = \ “104 \” & gt; Kỹ năng & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / thead & gt; \ r \ n & lt; tbody & gt; \ r \ n & lt; tr & gt ; \ r \ n & lt; td width = \ “74 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; NULL & lt; / td & gt ; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt ; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; 1 & lt; / td & gt; \ r \ n & lt ; td width = \ “100 \” & gt; X-63 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; X-64 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ ” 104 \ “& gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \” 74 \ “& gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; Thiết kế Cơ khí & lt; / td & gt; \ r \ n & lt ; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt ; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; Đang tải khí động học & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; 2 & lt; / td & gt; \ r \ n & lt ; td width = \ “74 \” & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt ; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt ; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt ; \ r \ n & lt; td width = \ “74 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; X-63 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \ “& gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \” 100 \ “& gt; X-64 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \” 76 \ “& gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; Thiết kế tương tự & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; Thiết kế con quay hồi chuyển & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt;/ tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; X-63 Đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \ “& gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \” 100 \ “& gt; X-64 Đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \” 76 \ “& gt; NULL & lt; / td & gt ; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt ; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt ; td width = \ “100 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt ; Thiết kế Kỹ thuật số & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & g t; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; R / F Thiết kế & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / tbody & gt; \ r \ n & lt; / table & gt; \ r \ nMỗi bảng có được mở rộng sang phải hoặc trái với các hàng null và các hàng được mở rộng bằng null đó đã được kết hợp với nhau. Thứ tự của các hàng là tùy ý và phụ thuộc vào việc thực hiện. Giờ đây, bạn có thể chỉnh sửa dữ liệu để đưa dữ liệu đó ở dạng hữu ích hơn. \ R \ n \ r \ n Lưu ý rằng bảng có ba cột ID, hai trong số đó là rỗng ở bất kỳ hàng nào. Bạn có thể cải thiện hiển thị bằng cách liên kết các cột ID. Mã & lt; mã & gt; COALESCE & lt; / mã & gt; biểu thức nhận giá trị của giá trị khác rỗng đầu tiên trong danh sách các giá trị. Trong trường hợp hiện tại, nó nhận giá trị của giá trị không rỗng duy nhất trong danh sách cột: \ r \ n & lt; pre class = \ “code \” & gt; SELECT COALESCE (E.EmpID, P.EmpID, S. EmpID) AS ID, \ r \ n E.Name, P.ProjectName, S.Skill \ r \ n TỪ NHÂN VIÊN E UNION THAM GIA DỰ ÁN P \ r \ n UNION THAM GIA KỸ NĂNG S \ r \ n ĐẶT HÀNG THEO ID; & lt; / trước & gt; \ r \ n Mã & lt; & gt; TỪ & lt; / mã & gt; mệnh đề giống như trong ví dụ trước, nhưng bây giờ là ba & lt; mã & gt; EMP_ID & lt; / code & gt; các cột được liên kết thành một cột duy nhất có tên & lt; code & gt; ID & lt; / code & gt ;. Bạn cũng sắp xếp kết quả theo & lt; code & gt; ID & lt; / code & gt ;. Bảng sau hiển thị kết quả. \ R \ n & lt; table & gt; & lt; caption & gt; Kết quả của SQL Union Join with COALESCE Expression & lt; / caption & gt; \ r \ n & lt; thead & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; ID & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Tên & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; ProjectName & lt ; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Kỹ năng & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / thead & gt; \ r \ n & lt; tbody & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; X-63 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; X-64 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ ” 94 \ “& gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \” 95 \ “& gt; Thiết kế Cơ khí & lt; / td & gt ; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt ; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Đang tải khí động học & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; X-63 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; X-64 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt ; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Thiết kế tương tự & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “95 \ “& gt; Thiết kế con quay hồi chuyển & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \” 94 \ “& gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; X-63 Đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “95 \ “& gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \” 94 \ “& gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; X-64 Đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt ; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Digital Design & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; R / F Thiết kế & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / tbody & gt; \ r \ n & lt; / table & gt; \ r \ nMỗi hàng trong kết quả này có dữ liệu về một dự án hoặc một kỹ năng, nhưng không phải cả hai. Khi bạn đọc kết quả, trước tiên bạn phải xác định loại thông tin trong mỗi hàng (dự án hoặc kỹ năng). Nếu & lt; mã & gt; ProjectName & lt; / code & gt; cột có giá trị khác rỗng, hàng ghi tên dự án mà nhân viên đã làm việc. Nếu & lt; mã & gt; Kỹ năng & lt; / mã & gt; cột không rỗng, hàng ghi tên một trong những kỹ năng của nhân viên. \ r \ n \ r \ nBạn có thể làm cho kết quả rõ ràng hơn một chút bằng cách thêm một & lt; mã & gt; COALESCE & lt; / code & gt; tới mã & lt; & gt; CHỌN & lt; / mã & gt; như sau: \ r \ n & lt; pre class = \ “code \” & gt; SELECT COALESCE (E.EmpID, P.EmpID, S.EmpID) AS ID, \ r \ n E.Name, COALESCE (P. Type, S.Type) AS Type, \ r \ n P.ProjectName, S.Skill \ r \ n TỪ NHÂN VIÊN E \ r \ n UNION JOIN (CHỌN \ “Project \” AS Type, P. * \ R \ n TỪ CÁC DỰ ÁN) P \ r \ n UNION THAM GIA (CHỌN \ “Kỹ năng \” NHƯ Loại, S. * \ R \ n TỪ KỸ NĂNG) S \ r \ n ĐẶT HÀNG THEO ID, Loại; & lt; / pre & gt; \ r \ nIn kết hợp này, bảng PROJECTS trong ví dụ trước được thay thế bằng & lt; code & gt; SELECT & lt; / code & gt; nối cột có tên & lt; code & gt; P.Type & lt; / code & gt; với giá trị không đổi & lt; code & gt; \ “Project \” & lt; / code & gt; vào các cột đến từ bảng DỰ ÁN. Tương tự, bảng KỸ NĂNG được thay thế bằng mã & lt; mã & gt; CHỌN & lt; / mã & gt; nối cột có tên & lt; code & gt; S.Type & lt; / code & gt; với giá trị không đổi & lt; code & gt; \ “Skill \” & lt; / code & gt; vào các cột đến từ bảng KỸ NĂNG. Trong mỗi hàng, & lt; mã & gt; P.Type & lt; / code & gt; là null hoặc & lt; code & gt; \ “Project \” & lt; / code & gt ;, và & lt; code & gt; S.Type & lt; / code & gt; là null hoặc & lt; mã & gt; \ “Kỹ năng \” & lt; / mã & gt;. \ r \ n \ r \ n Mã & lt; bên ngoài & gt; CHỌN & lt; / mã & gt; danh sách chỉ định & lt; mã & gt; COALESCE & lt; / code & gt; trong số hai & lt; mã & gt; Nhập & lt; / code & gt; thành một cột duy nhất có tên & lt; code & gt; Nhập & lt; / code & gt ;. Sau đó, bạn chỉ định & lt; mã & gt; Nhập & lt; / mã & gt; trong mệnh đề & lt; code & gt; ORDER BY & lt; / code & gt ;, sẽ sắp xếp các hàng có cùng một ID theo thứ tự đặt tất cả các dự án trước, sau đó là tất cả các kỹ năng. Kết quả được hiển thị trong bảng sau. \ R \ n & lt; table & gt; & lt; caption & gt; Refined Result of SQL Union Join with COALESCE Expressions & lt; / caption & gt; \ r \ n & lt; thead & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; ID & lt; / td & gt; \ r \ n & lt; td & gt; Tên & lt; / td & gt; \ r \ n & lt; td width = \ “66 \” & gt; Nhập & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; Tên dự án & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; Kỹ năng & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / thead & gt; \ r \ n & lt; tbody & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 1 & lt; / td & gt; \ r \ n & lt; td & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “66 \” & gt; Dự án & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; X-63 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 1 & lt; / td & gt; \ r \ n & lt; td & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “66 \” & gt; Dự án & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; X-64 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 1 & lt; / td & gt; \ r \ n & lt; td & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “66 \ “& gt; Kỹ năng & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; Thiết kế Cơ khí & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt ; tr & gt; \ r \ n & lt; td & gt; 1 & lt; / td & gt; \ r \ n & lt; td & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “66 \” & gt; Kỹ năng & lt; / td & gt; \ r n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; Đang tải khí động học & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt ; tr & gt; \ r \ n & lt; td & gt; 2 & lt; / td & gt; \ r \ n & lt; td & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “66 \” & gt; Dự án & lt; / td & gt; \ r \ r n & lt; td width = \ “104 \” & gt; X-63 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 2 & lt; / td & gt; \ r \ n & lt; td & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “66 \” & gt; Dự án & lt; / td & gt; r \ n & lt; td width = \ “104 \” & gt; X-64 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 2 & lt; / td & gt; \ r \ n & lt; td & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “66 \” & gt; Kỹ năng & lt; / td ; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; Thiết kế Tương tự & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 2 & lt; / td & gt; \ r \ n & lt; td & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “66 \ “& gt; Kỹ năng & lt; / td & gt; \ r \ n & lt; td width = \” 104 \ “& gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \” 151 \ “& gt; Thiết kế con quay hồi chuyển & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 3 & lt; / td & gt; \ r \ n & lt; td & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “66 \ “& gt; Dự án & lt; / td & gt; \ r \ n & lt; td width = \” 104 \ “& gt; X-63 Đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \” 151 \ “& gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 3 & lt; / td & gt; \ r \ n & lt; td & gt; Toyon & lt; / td & gt; \ r \ n & lt; “66 \” & gt; Dự án & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; X-64 Đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; NULL & lt ; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt;tr & gt; \ r \ n & lt; td & gt; 3 & lt; / td & gt; \ r \ n & lt; td & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “66 \” & gt; Skill & lt; / td & gt; \ r \ n ; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; Digital Design & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 3 & lt; / td & gt; \ r \ n & lt; td & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “66 \” & gt; Skill & lt; / td & gt; \ r \ n ; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; R / F Thiết kế & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / tbody & gt; \ r \ n & lt; / table & gt; \ r \ nBảng kết quả hiện trình bày một tài khoản rất dễ đọc về kinh nghiệm dự án và bộ kỹ năng của tất cả nhân viên trong bảng EMPLOYEE. \ r \ n \ r \ nXem xét số của SQL & lt; code & gt; JOIN & lt; / code & gt; các hoạt động khả dụng, dữ liệu liên quan từ các bảng khác nhau không phải là vấn đề, bất kể cấu trúc của bảng. Bạn có thể tin tưởng rằng nếu dữ liệu thô tồn tại trong cơ sở dữ liệu của bạn, SQL có phương tiện để lấy nó ra và hiển thị nó ở dạng có ý nghĩa. “,” Description “:” Các phép nối trong SQL cực kỳ hữu ích. Không giống như các loại & lt; a href = \ “https: //www.dummies.com/programming/sql/how-to-use-a-basic-join-in-sql/ \” & gt; tham gia SQL & lt; / a & gt ;, công đoàn & lt; em & gt; gia nhập & lt; / em & gt; không cố gắng khớp một hàng từ bảng nguồn bên trái với bất kỳ hàng nào trong bảng nguồn bên phải. Nó tạo một bảng ảo mới chứa liên hợp SQL của tất cả các cột trong cả hai bảng nguồn. Trong bảng kết quả ảo, các cột đến từ bảng nguồn bên trái chứa tất cả các hàng có trong bảng nguồn bên trái. Đối với các hàng đó, tất cả các cột đến từ bảng nguồn bên phải đều có giá trị rỗng. \ R \ n \ r \ nTương tự, các cột đến từ bảng nguồn bên phải chứa tất cả các hàng trong bảng nguồn bên phải. Đối với những hàng đó, tất cả các cột đến từ bảng nguồn bên trái đều có giá trị null. Do đó, bảng kết quả từ một phép kết hợp chứa tất cả các cột của cả hai bảng nguồn – và số hàng mà nó chứa là tổng số hàng trong hai bảng nguồn. \ R \ n \ r \ nKết quả của một Bản thân phép tham gia liên hiệp SQL không hữu ích ngay lập tức trong hầu hết các trường hợp; nó tạo ra một bảng kết quả với nhiều null trong đó. Tuy nhiên, bạn có thể nhận được thông tin hữu ích từ một liên kết khi bạn sử dụng nó cùng với & lt; mã & gt; COALESCE & lt; / code & gt; biểu hiện. Hãy xem một ví dụ. \ R \ n \ r \ n Giả sử bạn làm việc cho một công ty thiết kế và chế tạo tên lửa thử nghiệm. Bạn có một số dự án đang hoạt động. Bạn cũng có một số kỹ sư thiết kế có kỹ năng trong nhiều lĩnh vực. Là một nhà quản lý, bạn muốn biết những nhân viên nào, có những kỹ năng nào, đã làm việc trong những dự án nào. Hiện tại, dữ liệu này nằm rải rác trong bảng EMPLOYEE, bảng DỰ ÁN và bảng KỸ NĂNG. \ R \ n \ r \ nBảng EMPLOYEE chứa dữ liệu về nhân viên và & lt; mã & gt; EMPLOYEE.EmpID & lt; / code & gt; là khóa chính của nó. Bảng DỰ ÁN có một hàng cho mỗi dự án mà một nhân viên đã làm việc. & lt; mã & gt; PROJECTS.EmpID & lt; / code & gt; là một khóa ngoại tham chiếu đến bảng EMPLOYEE. Bảng KỸ NĂNG thể hiện chuyên môn của từng nhân viên. & lt; mã & gt; SKILLS.EmpID & lt; / code & gt; là một khóa ngoại tham chiếu đến bảng EMPLOYEE. \ r \ n \ r \ nBảng EMPLOYEE có một hàng cho mỗi nhân viên; bảng DỰ ÁN và bảng KỸ NĂNG có không hoặc nhiều hàng. \ r \ n \ r \ nCác bảng sau hiển thị dữ liệu mẫu. \ r \ n & lt; bảng & gt; & lt; caption & gt; Bảng NHÂN VIÊN & lt; / caption & gt; \ r \ n & lt; thead & gt ; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “66 \” & gt; EmpID & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; Tên & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / thead & gt; \ r \ n & lt; tbody & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “66 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; Ferguson & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “66 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; Frost & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “66 \ “& gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \” 76 \ “& gt; Toyon & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / tbody & gt; \ r \ n & lt; / bảng & gt; \ r \ n & lt; bảng & gt; & lt; chú thích & gt; DỰ ÁN Bảng & lt; / chú thích & gt; \ r \ n & lt; thead & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “104 \” & gt; Tên dự án & lt; / td & gt; \ r \ n & lt; td width = \ “132 \” & gt; EmpID & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / thead & gt; \ r \ n & lt; tbody & gt; \ r \ n & lt ; tr & gt; \ r \ n & lt; td width = \ “104 \” & gt; X-63 Struct ur & lt; / td & gt; \ r \ n & lt; td width = \ “132 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ ” 104 \ “& gt; X-64 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \” 132 \ “& gt; 1 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “104 \” & gt; X-63 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “132 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “104 \” & gt; X-64 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “132 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “104 \” & gt; X-63 Đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “132 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “104 \” & gt; X-64 Phép đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “132 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / tbody & gt; \ r \ n & lt; / table & gt; \ r \ n & lt; table & gt; & lt; caption & gt; KỸ NĂNG Bảng & lt; / caption & gt; \ r \ n & lt; thead & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; Skill & lt; / td & gt; \ r \ n & lt; td width = \ “118 \” & gt; EmpID & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / thead & gt; \ r \ n & lt; tbody & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; Thiết kế Cơ khí & lt; / td & gt; \ r \ n & lt; td width = \ “118 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; Đang tải khí động học & lt; / td & gt; \ r \ n & lt; td width = \ “118 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; Thiết kế tương tự & lt; / td & gt; \ r \ n & lt; td width = \ “118 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; Thiết kế con quay hồi chuyển & lt; / td & gt; \ r \ n & lt; td width = \ “118 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt ; td & gt; Thiết kế kỹ thuật số & lt; / td & gt; \ r \ n & lt; td width = \ “118 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt ; R / F Thiết kế & lt; / td & gt; \ r \ n & lt; td width = \ “118 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / tbody & gt; \ r \ n & lt; / table & gt; \ r \ nTừ các bảng, bạn có thể thấy Ferguson đã nghiên cứu thiết kế cấu trúc X-63 và X-64 và có chuyên môn về thiết kế cơ khí và tải khí động học. \ r \ n \ r \ nBây giờ, giả sử rằng, như một quản lý, bạn muốn e tất cả các thông tin về tất cả các nhân viên. Bạn quyết định & lt; a href = \ “https: //www.dummies.com/programming/sql/how-to-use-an-equi-join-in-sql/ \” & gt; áp dụng Equi-join & lt; / a & gt; vào bảng EMPLOYEE, PROJECTS và SKILLS: \ r \ n & lt; pre class = \ “code \” & gt; SELECT * \ r \ n FROM EMPLOYEE E, PROJECTS P, SKILLS S \ r \ n WHERE E.EmpID = P .EmpID \ r \ n VÀ E.EmpID = S.EmpID; & lt; / pre & gt; \ r \ nBạn có thể diễn đạt thao tác tương tự như một & lt; a href = \ “https://www.dummies.com/programming/ sql / how-to-use-an-inner-join-to-merge-sql -boards-for-html5and-css3-program / \ “& gt; internal join & lt; / a & gt; bằng cách sử dụng cú pháp sau: \ r \ n \ r \ nCả hai công thức đều cho kết quả giống nhau. \ r \ n \ r \ n \ r \ n & lt; table & gt; & lt; caption & gt; Kết quả của SQL Internal Join & lt; / caption & gt; \ r \ n & lt; thead & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; E.EmpID & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Tên & lt ; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; P.EmpID & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; ProjectName & lt; / td & gt; \ r \ n & lt ; td width = \ “90 \” & gt; S.EmpID & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Kỹ năng & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt ; / thead & gt; \ r \ n & lt; tbody & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \ “& gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \” 90 \ “& gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \” 90 \ “& gt; X-63 Cấu trúc & lt; / td & gt ; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Thiết kế Cơ khí & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-63 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Đang tải khí động học & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt ; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-64 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt ; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Thiết kế Cơ khí & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-64 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Đang tải khí động học & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt; / td & gt ; \ r \ n & lt; td width = \ “90 \” & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-63 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Tương tự Thiết kế & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Frost & lt; / td & gt; \ r \ n & lt ; td width = \ “90 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-63 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “90 \ “& gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \” 90 \ “& gt; Thiết kế con quay hồi chuyển & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-64 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Thiết kế Tương tự & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt ; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-64 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Thiết kế con quay hồi chuyển & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt ; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-63 Đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Digital Design & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-63 Đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \”& gt; R / F Thiết kế & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \” 90 \ “& gt; 3 & lt; / td & gt; \ r \ n & lt ; td width = \ “90 \” & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt ; Đo từ xa X-64 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Digital Design & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; X-64 Đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “90 \” & gt; R / F Thiết kế & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / tbody & gt; \ r \ n & lt; / table & gt; \ r \ nSắp xếp dữ liệu này không đặc biệt thú vị. Số ID nhân viên xuất hiện ba lần và các dự án và kỹ năng được trùng lặp cho mỗi nhân viên. Điểm mấu chốt: SQL các phép nối bên trong không phù hợp lắm để trả lời loại câu hỏi này. Bạn có thể đặt phép nối liên hiệp SQL hoạt động tại đây, cùng với một số liên kết được chọn có chiến lược & lt; mã & gt; CHỌN & lt; / mã & gt; để tạo ra một kết quả phù hợp hơn. Bạn bắt đầu với liên kết SQL cơ bản: \ r \ n \ r \ nLưu ý rằng liên kết liên hợp không có & lt; mã & gt; BẬT & lt; / mã & gt; mệnh đề. Nó không lọc dữ liệu, vì vậy mã & lt; mã & gt; BẬT & lt; / mã & gt; mệnh đề không cần thiết. Câu lệnh này tạo ra kết quả được hiển thị trong bảng sau. \ R \ n & lt; table & gt; & lt; caption & gt; Kết quả của SQL Union Join & lt; / caption & gt; \ r \ n & lt; thead & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; E.EmpID & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; Tên & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; P.EmpID & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; ProjectName & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; S.EmpID & lt; / td & gt ; \ r \ n & lt; td width = \ “104 \” & gt; Kỹ năng & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / thead & gt; \ r \ n & lt; tbody & gt; \ r \ n & lt; tr & gt ; \ r \ n & lt; td width = \ “74 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; NULL & lt; / td & gt ; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt ; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; 1 & lt; / td & gt; \ r \ n & lt ; td width = \ “100 \” & gt; X-63 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; X-64 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ ” 104 \ “& gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \” 74 \ “& gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; Thiết kế Cơ khí & lt; / td & gt; \ r \ n & lt ; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt ; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; Đang tải khí động học & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; 2 & lt; / td & gt; \ r \ n & lt ; td width = \ “74 \” & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt ; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt ; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt ; \ r \ n & lt; td width = \ “74 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; X-63 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \ “& gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \” 100 \ “& gt; X-64 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \” 76 \ “& gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; Thiết kế tương tự & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; Thiết kế con quay hồi chuyển & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; X-63 Đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; X-64 Phép đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt ; tr & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “74 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “76 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; Digital Design & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “74 \ “& gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \” 74 \ “& gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \” 74 \ “& gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “100 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; t d width = \ “76 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; R / F Thiết kế & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt ; / tbody & gt; \ r \ n & lt; / table & gt; \ r \ nMỗi bảng đã được mở rộng sang bên phải hoặc bên trái với các hàng rỗng và các hàng được mở rộng bằng null đó đã được kết hợp với nhau. Thứ tự của các hàng là tùy ý và phụ thuộc vào việc thực hiện. Giờ đây, bạn có thể chỉnh sửa dữ liệu để đưa dữ liệu đó ở dạng hữu ích hơn. \ R \ n \ r \ n Lưu ý rằng bảng có ba cột ID, hai trong số đó là rỗng ở bất kỳ hàng nào. Bạn có thể cải thiện hiển thị bằng cách liên kết các cột ID. Mã & lt; mã & gt; COALESCE & lt; / mã & gt; biểu thức nhận giá trị của giá trị khác rỗng đầu tiên trong danh sách các giá trị. Trong trường hợp hiện tại, nó nhận giá trị của giá trị không rỗng duy nhất trong danh sách cột: \ r \ n & lt; pre class = \ “code \” & gt; SELECT COALESCE (E.EmpID, P.EmpID, S. EmpID) AS ID, \ r \ n E.Name, P.ProjectName, S.Skill \ r \ n TỪ NHÂN VIÊN E UNION THAM GIA DỰ ÁN P \ r \ n UNION THAM GIA KỸ NĂNG S \ r \ n ĐẶT HÀNG THEO ID; & lt; / trước & gt; \ r \ n Mã & lt; & gt; TỪ & lt; / mã & gt; mệnh đề giống như trong ví dụ trước, nhưng bây giờ là ba & lt; mã & gt; EMP_ID & lt; / code & gt; các cột được liên kết thành một cột duy nhất có tên & lt; code & gt; ID & lt; / code & gt ;. Bạn cũng sắp xếp kết quả theo & lt; code & gt; ID & lt; / code & gt ;. Bảng sau hiển thị kết quả. \ R \ n & lt; table & gt; & lt; caption & gt; Kết quả của SQL Union Join with COALESCE Expression & lt; / caption & gt; \ r \ n & lt; thead & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; ID & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Tên & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; ProjectName & lt ; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Kỹ năng & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / thead & gt; \ r \ n & lt; tbody & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; X-63 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; X-64 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ ” 94 \ “& gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \” 95 \ “& gt; Thiết kế Cơ khí & lt; / td & gt ; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 1 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt ; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Đang tải khí động học & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; X-63 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; X-64 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt ; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Thiết kế tương tự & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 2 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “95 \ “& gt; Thiết kế con quay hồi chuyển & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \” 94 \ “& gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; X-63 Đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “95 \ “& gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \” 94 \ “& gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; X-64 Đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt ; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “94 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Digital Design & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td width = \ “94 \” & gt; 3 & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \”94 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “95 \” & gt; R / F Thiết kế & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / tbody & gt; \ r \ n & lt; / table & gt; \ r \ nMỗi hàng trong kết quả này có dữ liệu về một dự án hoặc một kỹ năng, nhưng không phải cả hai. Khi bạn đọc kết quả, trước tiên bạn phải xác định loại thông tin trong mỗi hàng (dự án hoặc kỹ năng). Nếu & lt; mã & gt; ProjectName & lt; / code & gt; cột có giá trị khác rỗng, hàng ghi tên dự án mà nhân viên đã làm việc. Nếu & lt; mã & gt; Kỹ năng & lt; / mã & gt; cột không rỗng, hàng ghi tên một trong những kỹ năng của nhân viên. \ r \ n \ r \ nBạn có thể làm cho kết quả rõ ràng hơn một chút bằng cách thêm một & lt; mã & gt; COALESCE & lt; / code & gt; tới mã & lt; & gt; CHỌN & lt; / mã & gt; như sau: \ r \ n & lt; pre class = \ “code \” & gt; SELECT COALESCE (E.EmpID, P.EmpID, S.EmpID) AS ID, \ r \ n E.Name, COALESCE (P. Type, S.Type) AS Type, \ r \ n P.ProjectName, S.Skill \ r \ n TỪ NHÂN VIÊN E \ r \ n UNION JOIN (CHỌN \ “Project \” AS Type, P. * \ R \ n TỪ CÁC DỰ ÁN) P \ r \ n UNION THAM GIA (CHỌN \ “Kỹ năng \” NHƯ Loại, S. * \ R \ n TỪ KỸ NĂNG) S \ r \ n ĐẶT HÀNG THEO ID, Loại; & lt; / pre & gt; \ r \ nIn kết hợp này, bảng PROJECTS trong ví dụ trước được thay thế bằng & lt; code & gt; SELECT & lt; / code & gt; nối cột có tên & lt; code & gt; P.Type & lt; / code & gt; với giá trị không đổi & lt; code & gt; \ “Project \” & lt; / code & gt; vào các cột đến từ bảng DỰ ÁN. Tương tự, bảng KỸ NĂNG được thay thế bằng mã & lt; mã & gt; CHỌN & lt; / mã & gt; nối cột có tên & lt; code & gt; S.Type & lt; / code & gt; với giá trị không đổi & lt; code & gt; \ “Skill \” & lt; / code & gt; vào các cột đến từ bảng KỸ NĂNG. Trong mỗi hàng, & lt; mã & gt; P.Type & lt; / code & gt; là null hoặc & lt; code & gt; \ “Project \” & lt; / code & gt ;, và & lt; code & gt; S.Type & lt; / code & gt; là null hoặc & lt; mã & gt; \ “Kỹ năng \” & lt; / mã & gt;. \ r \ n \ r \ n Mã & lt; bên ngoài & gt; CHỌN & lt; / mã & gt; danh sách chỉ định & lt; mã & gt; COALESCE & lt; / code & gt; trong số hai & lt; mã & gt; Nhập & lt; / code & gt; thành một cột duy nhất có tên & lt; code & gt; Nhập & lt; / code & gt ;. Sau đó, bạn chỉ định & lt; mã & gt; Nhập & lt; / mã & gt; trong mệnh đề & lt; code & gt; ORDER BY & lt; / code & gt ;, sẽ sắp xếp các hàng có cùng một ID theo thứ tự đặt tất cả các dự án trước, sau đó là tất cả các kỹ năng. Kết quả được hiển thị trong bảng sau. \ R \ n & lt; table & gt; & lt; caption & gt; Refined Result of SQL Union Join with COALESCE Expressions & lt; / caption & gt; \ r \ n & lt; thead & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; ID & lt; / td & gt; \ r \ n & lt; td & gt; Tên & lt; / td & gt; \ r \ n & lt; td width = \ “66 \” & gt; Nhập & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; Tên dự án & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; Kỹ năng & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / thead & gt; \ r \ n & lt; tbody & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 1 & lt; / td & gt; \ r \ n & lt; td & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “66 \” & gt; Dự án & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; X-63 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 1 & lt; / td & gt; \ r \ n & lt; td & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “66 \” & gt; Dự án & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; X-64 Cấu trúc & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 1 & lt; / td & gt; \ r \ n & lt; td & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “66 \ “& gt; Kỹ năng & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; Thiết kế Cơ khí & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt ; tr & gt; \ r \ n & lt; td & gt; 1 & lt; / td & gt; \ r \ n & lt; td & gt; Ferguson & lt; / td & gt; \ r \ n & lt; td width = \ “66 \” & gt; Kỹ năng & lt; / td & gt; \ r n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; Đang tải khí động học & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt ; tr & gt; \ r \ n & lt; td & gt; 2 & lt; / td & gt; \ r \ n & lt; td & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “66 \” & gt; Dự án & lt; / td & gt; \ r \ r n & lt; td width = \ “104 \” & gt; X-63 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 2 & lt; / td & gt; \ r \ n & lt; td & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “66 \” & gt; Dự án & lt; / td & gt; r \ n & lt; td width = \ “104 \” & gt; X-64 Hướng dẫn & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 2 & lt; / td & gt; \ r \ n & lt; td & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “66 \” & gt; Kỹ năng & lt; / td ; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; Thiết kế Tương tự & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 2 & lt; / td & gt; \ r \ n & lt; td & gt; Frost & lt; / td & gt; \ r \ n & lt; td width = \ “66 \ “& gt; Kỹ năng & lt; / td & gt; \ r \ n & lt; td width = \” 104 \ “& gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \” 151 \ “& gt; Thiết kế con quay hồi chuyển & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 3 & lt; / td & gt; \ r \ n & lt; td & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “66 \ “& gt; Dự án & lt; / td & gt; \ r \ n & lt; td width = \” 104 \ “& gt; X-63 Đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \” 151 \ “& gt; NULL & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 3 & lt; / td & gt; \ r \ n & lt; td & gt; Toyon & lt; / td & gt; \ r \ n & lt; “66 \” & gt; Dự án & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; X-64 Đo từ xa & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt; NULL & lt ; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 3 & lt; / td & gt; \ r \ n & lt; td & gt; Toyon & lt; / td & gt; \ r \ n & lt; td width = \ “66 \” & gt; Kỹ năng & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt ; Thiết kế Kỹ thuật số & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 3 & lt; / td & gt; \ r \ n & lt; td & gt; \ r \ n & lt; tr & gt; \ r \ n & lt; td & gt; 3 & lt; / td & gt; \ r \ n & lt; td & gt; Toyon & lt; / td & gt; ; td width = \ “66 \” & gt; Kỹ năng & lt; / td & gt; \ r \ n & lt; td width = \ “104 \” & gt; NULL & lt; / td & gt; \ r \ n & lt; td width = \ “151 \” & gt ; R / F Design & lt; / td & gt; \ r \ n & lt; / tr & gt; \ r \ n & lt; / tbody & gt; \ r \ n & lt; / table & gt; \ r \ nBảng kết quả hiện trình bày một tài khoản rất dễ đọc về trải nghiệm dự án và bộ kỹ năng của tất cả nhân viên trong bảng NHÂN VIÊN. \ r \ n \ r \ nXem xét số lượng SQL & lt; code & gt; JOIN & lt; / code & gt; các hoạt động khả dụng, dữ liệu liên quan từ các bảng khác nhau không phải là vấn đề, bất kể cấu trúc của bảng. Bạn có thể tin tưởng rằng nếu dữ liệu thô tồn tại trong cơ sở dữ liệu của bạn, SQL có phương tiện để lấy nó ra và hiển thị nó ở dạng có ý nghĩa. “,” Blurb “:” “,” author “: [{” authorId “: 9559, “name”: “Allen G. Taylor”, “slug”: “allen-g-taylor”, “description”: “Allen G. Taylor là một cựu chiến binh 40 năm trong ngành công nghiệp máy tính và là tác giả của hơn 40 cuốn sách , bao gồm SQL Cho hình nộm và Phát triển cơ sở dữ liệu cho hình nộm. Để biết tin tức mới nhất về các hoạt động của Taylor, hãy xem các khóa học trực tuyến của anh ấy (tại pioneer-academy1.teachable.com). “,” _Links “: {” self “:” https://dummies-api.dummies.com/v2/ author / 9559 “}}],” primaryCategoryTaxonomy “: {” categoryId “: 33608,” title “:” SQL “,” slug “:” sql “,” _links “: {” self “:” https: // dummies -api.dummies.com/v2/categories/33608″}},”secondaryCategoryTaxonomy”:{“categoryId”:0,”title”:null,”slug”:null,”_links”:null},”tertiaryCategoryTaxonomy “: {“categoryId”: 0, “title”: null, “slug”: null, “_ links”: null}, “trendingArticles”: null, “inThisArticle”: [], “RelatedArticles”: {“fromBook”: [{ “articleId”: 260869, “title”: “Sử dụng các ràng buộc SQL trong giao dịch”, “slug”: “using-sql-bindings-inside-transaction”, “categoryList”: [“công nghệ”, “lập trình-web-thiết kế” , “sql”], “_links”: {“self”: “https://dummies-api.dummies.com/v2/articles/260869”}}, {“articleId”: 260727, “title”: “Cách để Khai báo con trỏ SQL “,” slug “:” how-to-statement-a-sql-cursor “,” categoryList “: [” công nghệ “,” lập trình-web-thiết kế “,” sql “],” _ liên kết ” : {“tự”: “ht tps: //dummies-api.dummies.com/v2/articles/260727 “}}, {” articleId “: 260720,” title “:” SQL là gì? “,” slug “:” what-is-sql ” , “categoryList”: [“technology”, “programming-web-design”, “sql”], “_links”: {“self”: “https://dummies-api.dummies.com/v2/articles/260720 “}}, {” articleId “: 260678,” title “:” ODBC: Interfacing with SQL Databases “,” slug “:” odbc-interfaceacing-with-sql-databases “,” categoryList “: [” technology “,” Progra-web-design “,” sql “],” _links “: {” self “:” https://dummies-api.dummies.com/v2/articles/260678 “}}, {” articleId “: 209258, “title”: “SQL For Dummies Cheat Sheet”, “slug”: “sql-for-dummies-cheat-sheet”, “categoryList”: [“công nghệ”, “lập trình-web-thiết kế”, “sql”], “_links”: {“self”: “https://dummies-api.dummies.com/v2/articles/209258”}}], “fromCategory”: [{“articleId”: 260869, “title”: “Đang sử dụng Các ràng buộc SQL trong giao dịch “,” slug “:” using-sql-bindings-inside-transaction “,” categoryList “: [” technology “,” Progra-web-design “,” sql “],” _ links “: {” self “:” https://dummies-api.dummies.com/v2/articles/260869 “}}, {” art icleId “: 260727,” title “:” Cách khai báo con trỏ SQL “,” slug “:” how-to-statement-a-sql-cursor “,” categoryList “: [” công nghệ “,” lập trình-web- design “,” sql “],” _links “: {” self “:” https://dummies-api.dummies.com/v2/articles/260727 “}}, {” articleId “: 260720,” title “: “SQL là gì?”, “Slug”: “what-is-sql”, “categoryList”: [“công nghệ”, “lập trình-web-thiết kế”, “sql”], “_ links”: {“self”: “https://dummies-api.dummies.com/v2/articles/260720”}},{“articleId”:260678,”title”:”ODBC: Giao diện với Cơ sở dữ liệu SQL”, “slug”: “odbc-interface -with-sql-databases “,” categoryList “: [” technology “,” programming-web-design “,” sql “],” _links “: {” self “:” https: //dummies-api.dummies. com / v2 / Articles / 260678 “}}, {” articleId “: 209258,” title “:” SQL For Dummies Cheat Sheet “,” slug “:” sql-for-dummies-cheat-sheet “,” categoryList “: [“technology”, “programming-web-design”, “sql”], “_links”: {“self”: “https://dummies-api.dummies.com/v2/articles/209258”}}]} , “hasRelatedBookFromSearch”: false, “RelatedBook”: {“bookId”: 281871, “slug”: “sql-for-dummies-9th-edition”, “isb n “:” 9781119527077 “,” categoryList “: [” công nghệ “,” lập trình-web-thiết kế “,” sql “],” amazon “: {” mặc định “:” https://www.amazon.com/gp /product/1119527074/ref=as_li_tl?ie=UTF8&tag=wiley01-20″,”ca”:”https://www.amazon.ca/gp/product/1119527074/ref=as_li_tl?ie=UTF8&tag = wiley01-20 “,” indigo_ca “:” http://www.tkqlhce.com/click-9208661-13710633?url=https://www.cha Chapter.indigo.ca/en-ca/books/product/1119527074 -item.html & amp; cjsku = 978111945484 “,” gb “:” https://www.amazon.co.uk/gp/product/1119527074/ref=as_li_tl?ie=UTF8&tag=wiley01-20 “,” de “:” https://www.amazon.de/gp/product/1119527074/ref=as_li_tl?ie=UTF8&tag=wiley01-20 “},” image “: {” src “:” https: // www .dummies.com / wp-content / uploads / sql-for-dummies-9th-edition-cover-9781119527077-203×255.jpg “,” width “: 203,” height “: 255},” title “:” SQL For Dummies, 9 Edition “,” testBankPinActivationLink “:” “,” bookOutOfPrint “: false,” authorInfo”:” \ n & lt; p & gt; & lt; b data-author-id = \ “9559 \” & gt; Allen G. Taylor & lt; / b & gt; là một cựu chiến binh 30 năm trong ngành công nghiệp máy tính và là tác giả của hơn 40 cuốn sách, bao gồm & lt; b & gt; & lt; i & gt; SQL For Dummies & lt; / i & gt; & lt; / b & gt; và & lt; i & gt; Báo cáo Pha lê cho Hình nộm. & lt; / i & gt; Ông thuyết trình trên toàn quốc về cơ sở dữ liệu, đổi mới và khởi nghiệp. Ông cũng giảng dạy phát triển cơ sở dữ liệu quốc tế thông qua một nhà cung cấp giáo dục trực tuyến hàng đầu. & lt; / p & gt; “,” author “: [{” authorId “: 9559,” name “:” Allen G. Taylor “,” slug “:” allen-g-taylor “,” description “:” Allen G. Taylor là một cựu chiến binh 40 năm trong ngành công nghiệp máy tính và là tác giả của hơn 40 cuốn sách, bao gồm SQL For Dummies và Database Development For Dummies. Để biết tin tức mới nhất về các hoạt động của Taylor, hãy xem các khóa học trực tuyến của anh ấy (tại pioneer-academy1.teachable.com). “,” _Links “: {” self “:” https://dummies-api.dummies.com/v2/ tác giả / 9559 “}}],” _links “: {” self “:” https://dummies-api.dummies.com/v2/books/ “}},” bộ sưu tập “: [],” articleAds “: { “footerAd”: “& lt; div class = \” du-ad-region row \ “id = \” article_page_adhesion_ad \ “& gt; & lt; div class = \” du-ad-unit col-md-12 \ “data- slot-id = \ “article_page_adhesion_ad \” data-refresh = \ “false \” \ r \ n data-target = \ “[{& amp; quot; key & amp; quot;: & amp; quot; cat & amp; quot ;, & amp; quot; giá trị & amp; quot;: [& amp; quot; công nghệ & amp; quot ;, & amp; quot; lập trình-thiết kế web & amp; quot ;, & amp; quot; sql & amp; quot;]}, {& amp; quot; key & amp; quot; : & amp; quot; isbn & amp; quot ;, & amp; quot; giá trị & amp; quot;: [& amp; quot; 9781119527077 & amp; quot;]}] \ “id = \” du-slot-6217bac61c016 \ “& gt; & lt; / div & gt ; & lt; / div & gt; “,” rightAd “:” & lt; div class = \ “du-ad-region row \” id = \ “article_page_right_ad \” & gt; & lt; div class = \ “du-ad-unit col -md-12 \ “data-slot-id = \” article_page_right_ad \ “data-refresh = \” false \ “\ r \ n data-target = \” [{& amp; quot; key & amp; quot;: & amp; quot; cat & amp; quot ;, & amp; quot; giá trị & amp; quot;: [ & amp; quot; công nghệ & amp; quot ;, & amp; quot; lập trình-thiết kế web & amp; quot ;, & amp; quot; sql & amp; quot;]}, {& amp; quot; key & amp; quot;: & amp; quot; isbn & amp; quot ; & amp; quot; giá trị & amp; quot;: [& amp; quot; 9781119527077 & amp; quot;]}] \ “id = \” du-slot-6217bac61ca57 \ “& gt; & lt; / div & gt; & lt; / div & gt;”} , “articleType”: {“articleType”: “Articles”, “articleList”: null, “content”: null, “videoInfo”: {“videoId”: null, “name”: null, “accountId”: null, ” playerId “: null,” thumbnailUrl “: null,” description “: null,” uploadDate “: null}},” Sponship “: {” SponshipPage “: false,” backgroundImage “: {” src “: null,” width ” : 0, “height”: 0}, “brandingLine”: “”, “brandingLink”: “”, “brandingLogo”: {“src”: null, “width”: 0, “height”: 0}}, ” primaryLearningPath “:” Advance “,” lifeExpectancy “: null,” lifeExpectancySetFrom “: null,” dummiesForKids “:” no “,” secureContent “:” no “,” adInfo “:” “,” adPairKey “: []}, “trạng thái”: “xuất bản”, “khả năng hiển thị”: “công khai”, “bài viết Id “: 260866},” articleLoadedStatus “:” success “},” listState “: {” list “: {},” objectTitle “:” “,” status “:” initial “,” pageType “: null,” objectId “: null,” page “: 1,” sortField “:” time “,” sortOrder “: 1,” categoryIds “: [],” articleTypes “: [],” filterData “: {},” filterDataLoadedStatus “:” ban đầu “,” pageSize “: 10},” adsState “: {” pageScripts “: {” headers “: {” timestamp “:” 2022-06-10T12: 59: 10 + 00: 00 “},” adsId “: 0, “data”: {“scripts”: [{“pages”: [“all”], “location”: “header”, “script”: “& lt;! – Optimizely Script – & gt; \ r \ n & lt; script src = \ “https: //cdn.optimizely.com/js/10563184655.js \” & gt; & lt; / script & gt; “,” đã bật “: false}, {” các trang “: [” tất cả “] , “location”: “header”, “script”: “& lt;! – Thẻ comScore – & gt; \ r \ n & lt; script & gt; var _comscore = _comscore || []; _ comscore.push ({c1: \ “2 \”, c2: \ “15097263 \”}); (function () {var s = document.createElement (\ “script \”), el = document.getElementsByTagName (\ “script \”) [0]; s.async = true; s.src = (document.location.protocol == \ “https: \”? \ “https: // sb \”: \ “http: // b \ “) + \”. scorecardresearch.com/beacon.js\”;el.parentNode.insertBefore(s, el);}) (); & lt; / script & gt; & lt; noscript & gt; & lt; img src = \ “https: //sb.scorecardresearch.com/p? c1 = 2 & amp; c2 = 15097263 & amp; cv = 2.0 & amp; cj = 1 \” / & gt; & lt; / noscript & gt; \ r \ n & lt;! – / comScore Thẻ – & gt; “,” đã bật “: true}, {” trang “: [” tất cả “],” vị trí “:” chân trang “,” tập lệnh “:” & lt;! – BẮT ĐẦU TRANG WEB PHẢN HỒI QUALTRICS – & gt; \ r \ n & lt; script type = ‘text / javascript’ & gt; \ r \ n (function () {var g = function (e, h, f, g) {\ r \ nthis.get = function (a ) {for (var a = a + \ “= \”, c = document.cookie.split (\ “; \”), b = 0, e = c.length; b & lt; e; b ++) {for (var d = c [b]; \ “\” == d.charAt (0);) d = d.substring (1, d.length); if (0 == d.indexOf (a)) return d.substring ( a.length, d.length)} return null}; \ r \ nthis.set = function (a, c) {var b = \ “\”, b = new Date; b.setT ime (b.getTime () + 6048E5); b = \ “; hết hạn = \ “+ b.toGMTString (); document.cookie = a + \” = \ “+ c + b + \”; đường dẫn = /; \ “}; \ r \ nthis.check = function () {var a = this.get (f); if (a) a = a.split (\”: \ “); else if (100! = e) \ “v \” == h & amp; & amp; (e = Math.random () & gt; = e / 100? 0: 100), a = [h, e, 0], this.set (f, a.join (\ “: \”)); else return! 0; var c = a [1]; if (100 == c) return! 0; switch (a [0]) {case \ “v \”: return! 1; case \ “r \”: return c = a [2]% Math.floor (100 / c), a [2] ++, this.set (f, a.join (\ “: \”)) ,! c} return! 0}; \ r \ nthis.go = function () {if (this.check ()) {var a = document.createElement (\ “script \”); a.type = \ “text /javascript\”;a.src=g;document.body&&document.body.appendChild (a)}}; \ r \ nthis.start = function () {var t = this; \ “complete \”! == document.readyState? window.addEventListener? window.addEventListener (\ “tải \ “, function () {t.go ()},! 1): window.attachEvent & amp; & amp; window.attachEvent (\” onload \ “, function () {t.go ()}): t.go ( )};}; \ r \ ntry {(new g (100, \ “r \”, \ “QSI_S_ZN_5o5yqpvMVjgDOuN \”, \ “https://zn5o5yqpvmvjgdoun-wiley.siteintercept.qualtrics.com/SIE/? \ “)). start ()} catch (i) {}}) (); \ r \ n & lt; / script & gt; & lt; div id = ‘ZN_5o5yqpvMVjgDOuN’ & gt; & lt;! – KHÔNG LOẠI BỎ NỘI DUNG ĐƯỢC ĐẶT Ở ĐÂY – & gt; & lt; / div & gt; \ r \ n & lt;! – END TRANG WEB PHẢN HỒI SNIPPET – & gt; “,” đã bật “: false}, {” trang “: [” tất cả “],” vị trí “:” header “,” script “:” & lt;! – Mã theo dõi Hotjar cho http://www.dummies.com – & gt; \ r \ n & lt; script & gt; \ r \ n (function (h, o, t, j, a, r) ​​{\ r \ n h.hj = h.hj || function () {(h.hj.q = h.hj.q || []). push (đối số)}; \ r \ n h._hjSettings = {hjid: 257151, hjsv: 6}; \ r \ n a = o.getElementsByTagName (‘head’) [0]; \ r \ n r = o.createElement (‘script’); r.async = 1; \ r \ n r.src = t + h._hjSettings.hjid + j + h._hjSettings.hjsv; \ r \ n a.appendChild (r); \ r \ n}) (cửa sổ, tài liệu, ‘https: //static.hotjar .com / c / hotjar – ‘,’. js? sv = ‘); \ r \ n & lt; / script & gt; “,” enable “: false}, {” pages “: [” article “],” location “: “header”, “script”: “& lt;! – // Kết nối Vùng chứa: dummies – & gt; & lt; script src = \ “// get.s-onetag.com/bffe21a1-6bb8-4928-9449-7beadb468dae/tag.min.js \” async defer & gt; & lt; / script & gt; “,” enable “: true} , {“pages”: [“Home”], “location”: “header”, “script”: “& lt; meta name = \” facebook-domain-verify \ “content = \” irk8y0irxf718trg3uwwuexg6xpva0 \ “/ & gt;” , “bật”: true}, {“trang”: [“trang chủ”, “bài viết”, “danh mục”, “tìm kiếm”], “vị trí”: “chân trang”, “tập lệnh”: “& lt;! – Facebook Mã Pixel – & gt; \ r \ n & lt; noscript & gt; \ r \ n & lt; img height = \ “1 \” width = \ “1 \” src = \ “https://www.facebook.com/tr?id = 256338321977984 & amp; ev = PageView & amp; noscript = 1 \ “/ & gt; \ r \ n & lt; / noscript & gt; \ r \ n & lt;! – End Facebook Pixel Code – & gt;”, “enable”: true}]}} , “pageScriptsLoadedStatus”: “success”}, “navigationState”: {“navigationCollections”: [{“collectionId”: 287568, “title”: “BYOB (Be Your Own Boss)”, “hasSubCategories”: false, “url” : “/ collection / for-the-entry-level-Entreprene-287568”}, {“collectionId”: 293237, “title”: “Be a Rad Dad”, “hasSubCategories”: false, “url”: “/ collection / be-the-best-dad-293237 “}, {” collectionId ” : 287563, “title”: “Dành cho những ai đang tìm kiếm sự yên tâm”, “hasSubCategories”: false, “url”: “/ collection / for-those-seek-peace-of-mind-287563”}, {“collectionId” : 287570, “title”: “Dành cho Người đam mê khát vọng”, “hasSubCategories”: false, “url”: “/ collection / for-the-bougielicious-287570”}, {“collectionId”: 291903, “title”: ” Dành cho Người say mê cần sa chớm nở “,” hasSubCategories “: false,” url “:” / collection / for-the-budding-cannabis-crazyast-291903 “}, {” collectionId “: 291934,” title “:” Dành cho bài kiểm tra -Season Crammer “,” hasSubCategories “: false,” url “:” / collection / for-the-exam-season-crammer-291934 “}, {” collectionId “: 287569,” title “:” For the Hopeless Romantic ” , “hasSubCategories”: false, “url”: “/ collection / for-the-hopeless-romance-287569”}, {“collectionId”: 287567, “title”: “For the Unabashed Hippie”, “hasSubCategories”: false , “url”: “/ collection / for-the-unabashed-hippie-287567”}, {“collectionId”: 292186, “title”: “Just DIY It”, “hasSubCategories”: false, “url”: “/ collection / just-diy-it-292186 “}, {” collectionId “: 290164,” title “:” Hãy cam kết đề cập đến bản thân tốt hơn “,” hasSubCategories “: false,” url “:” / collection / make-a-commit-to-better-yourself-290164 “}],” navigationCollectionsLoadedStatus “:” success “,” navigationCategories “: { “books”: {“0”: {“data”: [{“categoryId”: 33512, “title”: “Technology”, “hasSubCategories”: true, “url”: “/ category / books / technology-33512” }, {“categoryId”: 33662, “title”: “Học thuật & amp; The Arts “,” hasSubCategories “: true,” url “:” / category / books / academics-the-Arts-33662 “}, {” categoryId “: 33809,” title “:” Home, Auto, & amp; Sở thích “,” hasSubCategories “: true,” url “:” / category / books / home-auto-hobbies-33809 “}, {” categoryId “: 34038,” title “:” Body, Mind, & amp; Spirit “,” hasSubCategories “: true,” url “:” / category / books / body-mind-Spirit-34038 “}, {” categoryId “: 34224,” title “:” Kinh doanh, Nghề nghiệp, & amp; Money “,” hasSubCategories “: true,” url “:” / category / books / business-Career-money-34224 “}],” breadcrumbs “: [],” categoryTitle “:” Level 0 Category “,” mainCategoryUrl ” : “/ category / books / level-0-category-0”}}, “article”: {“0”: {“data”: [{“categoryId”: 33512, “title”: “Technology”, “hasSubCategories “: true,” url “:” / category / article / technology-33512 “}, {” categoryId “: 33662,” title “:” Academics & amp; The Arts “,” hasSubCategories “: true,” url “:” / category / posts / academics-the-Arts-33662 “}, {” categoryId “: 33809,” title “:” Home, Auto, & amp; Sở thích “,” hasSubCategories “: true,” url “:” / category / posts / home-auto-hobbies-33809 “}, {” categoryId “: 34038,” title “:” Body, Mind, & amp; Spirit “,” hasSubCategories “: true,” url “:” / category / posts / body-mind-Spirit-34038 “}, {” categoryId “: 34224,” title “:” Kinh doanh, Nghề nghiệp, & amp; Money “,” hasSubCategories “: true,” url “:” / category / posts / business-Career-money-34224 “}],” breadcrumbs “: [],” categoryTitle “:” Level 0 Category “,” mainCategoryUrl ” : “/ category / Articles / level-0-category-0 “}}},” navigationCategoriesLoadedStatus “:” success “},” searchState “: {” searchList “: [],” searchStatus “:” initial “,” RelatedArticlesList “: [], “liên quan union-join-260866 / “,” hash “:” “,” query “: {},” params “: {” category1 “:” technology “,” category2 “:” programming-web-design “,” category3 ” : “sql”, “article”: “how-to-use-the-sql-union-join-260866”}, “fullPath”: “/ article / technology / programming-web-design / sql / how-to- use-the-sql-union-join-260866 / “,” meta “: {” routeType “:” article “,” breadcrumbInfo “: {” hậu tố “:” Articles “,” baseRoute “:” / category / posts ” }, “advancednderWithAsyncData”: true}, “from”: {“name”: null, “path”: “/”, “hash”: “”, “query”: {}, “params”: {}, ” fullPath “:” / “,” meta “: {}}},” dropsState “: {” submitEmailResponse “: false,” status “:” initial “},” sfmcState “: {” newsletterSignupStatus “:” initial “}}

Xem Thêm  Hơn 20 mẫu trang HTML miễn phí đang được xây dựng mà bạn không thể bỏ lỡ - trang html mẫu đang được xây dựng


Xem thêm những thông tin liên quan đến chủ đề hợp nhất với tham gia sql

We Learn SQL #3 | SQL JOIN Basics

  • Tác giả: We Learn SQL
  • Ngày đăng: 2019-12-17
  • Đánh giá: 4 ⭐ ( 9199 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Find out what SQL JOINs are and what they can do for you in your daily work with databases.

    If you want to learn or practice SQL, check out https://learnsql.com/.

    It’s another video in the series about SQL. In previous episodes, we talked about what SQL and databases are. Now it’s time for querying more than one table using SQL JOINs. This video assumes that you can already write simple SQL queries. All good? Then let’s get started!

    👌 Subscribe to our channel and leave a comment!\r

    👌 Join us on Facebook: https://www.facebook.com/groups/welearnsql

    🔊 Music: https://www.bensound.com/

Bảng tham gia SQL với PK tổng hợp 12 cột với chính nó một cách dễ dàng

  • Tác giả: isolution.pro
  • Đánh giá: 4 ⭐ ( 5233 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Tuyển tập những câu hỏi phỏng vấn SQL thường gặp nhất

  • Tác giả: www.topcv.vn
  • Đánh giá: 3 ⭐ ( 1928 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Nắm rõ những câu hỏi phỏng vấn SQL sẽ giúp bạn chủ động hơn, cơ hội trúng tuyển vì vậy mà tăng cao. TopCV sẽ tổng hợp một số câu hỏi phỏng vấn SQL thường gặp

Học SQL với các câu hỏi phỏng vấn SQL cơ bản đến nâng cao

  • Tác giả: vietlike.vn
  • Đánh giá: 4 ⭐ ( 8903 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: SQL dường như là một trong những ngôn ngữ lập trình top đầu (phổ biến rộng rãi) hiện nay, mặc dù về mặt kỹ thuật, đây không phải là một ngôn ngữ lập trình!

Hướng dẫn trực quan về tham gia SAS SQL

  • Tác giả: helpex.vn
  • Đánh giá: 4 ⭐ ( 6659 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Một phép nối được sử dụng để kết hợp các quan sát (bản ghi) từ hai hoặc nhiều tập dữ liệu (bảng) bằng cách sử dụng giá trị chung cho mỗi tập dữ liệu. Kết hợp chéo (Sản phẩm Descartes) Các…

Tổng hợp những câu lệnh SQL cơ bản

  • Tác giả: topdev.vn
  • Đánh giá: 3 ⭐ ( 2822 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Các phiên bản của SQL Server: Enterprise, Personal, Desktop, Developer,.. Các bộ phận của SQL Server: Enterprise Manager, Query Analyzer, Books Online,..

SQL Server: Hàm tập hợp (Aggregate)

  • Tác giả: v1study.com
  • Đánh giá: 5 ⭐ ( 2463 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Các hàm tập hợp được dùng để thống kê dữ liệu, các hàm này thường đi cùng với câu lệnh SELECT. Dưới đây là danh sách các hàm tập hợp phổ biến.

Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình

Xem Thêm  Làm thế nào để đảo ngược chuỗi trong Python - python làm thế nào để đảo ngược một chuỗi

By ads_php