Đang tải... (xem toàn văn)
Các điểm chính của TSQL Biến, kiểu dữ liệu và chú thích. Các hàm và biểu thức của SQL Server TSQL, các nhóm ngôn ngữ và lệnh tương ứng: DDL(Data Definition Language): ngôn ngữ địnhnghĩa dữ liệu DML(Data Manipulate Language): ngôn ngữ thaotác dữ liệu DCL(Data Control Language): ngôn ngữ điều khiểndữ liệuTransactSQL Language SQL: Structured Query Language, được sử dụngrộng rãi trên toàn thế giới. TransactSQL được Microsoft xây dựng dựa trênchuẩn của SQL. Cung cấp các lệnh để thi hành các thao tác trên dữliệu nhanh chóng như: create, insert, delete,update, select. TSQL là ngôn ngữ thao tác dữ liệu linh hoạt vớinhiều kiểu dữ liệu, đối tượng, hàm và thủ tục. Kiểm soát giao dịch, ngoại lệ, và các vấn đề ràngbuộc dữ liệu hiệu quả
Ngôn ngữ Transact-SQL GV: Nguyễn Thị Cẩm Hương Nội dung Các điểm T-SQL Biến, kiểu liệu thích Các hàm biểu thức SQL Server T-SQL, nhóm ngôn ngữ lệnh tương ứng: DDL(Data Definition Language): ngôn ngữ định nghĩa liệu DML(Data Manipulate Language): ngôn ngữ thao tác liệu DCL(Data Control Language): ngôn ngữ điều khiển liệu Transact-SQL Language SQL: Structured Query Language, sử dụng rộng rãi toàn giới Transact-SQL Microsoft xây dựng dựa chuẩn SQL Cung cấp lệnh để thi hành thao tác liệu nhanh chóng như: create, insert, delete, update, select T-SQL ngôn ngữ thao tác liệu linh hoạt với nhiều kiểu liệu, đối tượng, hàm thủ tục Kiểm soát giao dịch, ngoại lệ, vấn đề ràng buộc liệu hiệu Biến Transact-SQL (1) Biến đối tượng chứa liệu Có dạng: Biến cục (Local Variables) Biến toàn cục (Global Variables) DECLARE { @local_variable [AS] data_type } Biến Transact-SQL(2) Dùng lệnh SET SELECT để gán giá trị cho biến SET @local_variable = value OR SELECT @local_variable = value Biến Transact-SQL(2) Biến toàn cục (Global Variables) Được xây dựng quản lý hệ thống Biến toàn cục bắt đầu với ký hiệu ‘@’ Ví dụ SELECT @@VERSION AS sqlSeververDetails Kiểu liệu Transact-SQL (1) Datatype thuộc tính đối tượng chứa Những đối tượng T-SQL có dùng kiểu liệu Cột table hay views Tham số stored procedures Biến Hàm T-SQL DataTypes Các kiểu liệu thường dùng SQL Server Data type name Class Size in Bytes SmallDateTime Date/Time Date Date/Time Cursor Special Numeric Char Character Varies VarChar Character Character Text Character Varies NChar Unicode Varies NVarChar Unicode Varies DataTypes Ntext Unicode Varies Binary Binary Varies VarBinary Binary Varies Image Binary Varies Table Other Special XML Character Varies Chú thích Transact-SQL (1) Chú thích: ghi code T-SQL không biên dịch Tạo thích cho dòng lệnh, bó lệnh hay thủ tục Có loại thích: (double hyphens) /* */ (forward slash-asterisk character pairs) Truy vấn nhiều bảng (Self Join) SELECT e.Firstname+' '+e.Lastname AS 'Employee' , m.Firstname+' '+m.Lastname AS 'Manager' FROM Employees AS e JOIN Employees AS m ON e.ManagerID = m.EmployeeID Lấy kết từ nhiều câu SELECT UNION SELECT Firstname+' '+Lastname AS name, Homephone FROM Employees UNION SELECT Companyname, Phone FROM Customers Sắp thứ tự: • • • Select * From Products Order By UnitPrice desc Truy • • • • • • • vấn với mệnh đề Group By Select City, Count(CustomerID) as No_Cust From Customers Group by City SELECT Customers.CustomerID, CompanyName, count(OrderID) as No_Order FROM Customers INNER JOIN Orders ON Customers.CustomerID = Orders.CustomerID Group By Customers.CustomerID, CompanyName Truy vấn với mệnh đề Having • • • • • SELECT Customers.CustomerID, CompanyName, count(OrderID) as No_Order FROM Customers INNER JOIN Orders ON Customers.CustomerID = Orders.CustomerID Group By Customers.CustomerID, CompanyName Having count(OrderID)>=10 Lệnh SELECT INTO Ta tạo table dựa vào tập kết câu lệnh Select Table table tạm table thực DB SELECT c.CustomerID AS NameId, OrderID, OrderDate INTO Customer_Order FROM Customers AS c INNER JOIN Orders AS o ON c.CustomerID = o.CustomerID WHERE month(OrderDate) = Sử dụng Subquery câu truy vấn: Subquery trả giá trị SELECT ProductName, UnitPrice FROM Products WHERE SupplierID=1 and UnitPrice < ( SELECT AVG(UnitPrice) FROM Products WHERE SupplierID=1 ) Subquery trả dãy giá trị Select OrderID from [order details] Where ProductID IN (select ProductID From Products Where SupplierID=1) Subquery trả dãy giá trị Select OrderID , productID, quantity from [order details] Where ProductID =1 and quantity >= all (select quantity From [order details] Where ProductID=1) Subquery dùng với toán tử EXISTS Select * from Customers as mC where NOT EXISTS ( SELECT * from [Orders] as o where o.customerid = mC.customerid ) SELECT-WITH STATEMENT Trả tập kết lưu trữ tạm thời common table expression (CTE) Tạo CTE danh sách cột Sử dụng CTE SELECT-MERGE Đây điểm SQL Server 2008, merge liệu từ table trở lên: CREATE TABLE dbo.T1(col1 INT PRIMARY KEY); CREATE TABLE dbo.T2(col1 NUMERIC(12, 2) PRIMARY KEY); INSERT INTO dbo.T1(col1) VALUES(1); INSERT INTO dbo.T1(col1) VALUES(2); INSERT INTO dbo.T1(col1) VALUES(3); INSERT INTO dbo.T2(col1) VALUES(1.); INSERT INTO dbo.T2(col1) VALUES(2.); INSERT INTO dbo.T2(col1) VALUES(3.); SELECT T1.col1, T2.col1 FROM T1 INNER MERGE JOIN T2 ON dbo.T1.col1 = dbo.T2.col1; SELECTINTERSECT, EXCEPT SELECT-COMPUTE BY Trả tổng giá trị nhiều dòng tương ứng với field INSERT statement Cú pháp Demo DELETE statements Cú pháp: Demo UPDATE statement Cú pháp Câu lệnh TRUNCATE TABLE Dùng để xóa dòng table Nhanh lệnh DELETE Không dùng với Trigger TRUNCATE TABLE table_name VD TRUNCATE TABLE NewProducts [...]... characters Returns the numeric value of the first character of a UNICODE Expression Returns the string passed in with all characters converted to uppercase Returns the difference between two Dates Ngôn ngữ định nghĩa dữ liệu 1-4 (Data Definition Language) DDL được dùng định nghĩa và quản lý các tính chất cũng như thuộc tính của CSDL như: dòng(row), cột(column), khóa(key), vị trí lưu trữ tập tin ... T-SQL, nhóm ngôn ngữ lệnh tương ứng: DDL(Data Definition Language): ngôn ngữ định nghĩa liệu DML(Data Manipulate Language): ngôn ngữ thao tác liệu DCL(Data Control Language): ngôn ngữ điều... lệnh để thi hành thao tác liệu nhanh chóng như: create, insert, delete, update, select T-SQL ngôn ngữ thao tác liệu linh hoạt với nhiều kiểu liệu, đối tượng, hàm thủ tục Kiểm soát giao dịch,... passed in with all characters converted to uppercase Returns the difference between two Dates Ngôn ngữ định nghĩa liệu 1-4 (Data Definition Language) DDL dùng định nghĩa quản lý tính chất thuộc