1.概述
MSSQL是Microsoft SQL Server的缩写,是一种常用的关系型数据库管理系统。MSSQL语句是与MSSQL数据库交互的基本工具,可以用来建立数据库表、插入数据、更新数据、删除数据等操作。本文将为大家介绍如何精通MSSQL语法,并给出一些常用的MSSQL语句示例。
2.建立数据库表
2.1 CREATE TABLE
CREATE TABLE语句用于创建一个包含指定列和数据类型的数据库表。
CREATE TABLE table_name (
column1 datatype [ NULL | NOT NULL ],
column2 datatype [ NULL | NOT NULL ],
...
);
其中,table_name表示需要创建的数据库表名,column1和column2是数据库表中需要创建的列名,datatype表示相应的数据类型。
下面是一个具体的CREATE TABLE语句示例:
CREATE TABLE employee (
emp_no INT NOT NULL,
emp_name VARCHAR(50) NOT NULL,
hire_date DATE,
salary DECIMAL(10, 2),
PRIMARY KEY (emp_no)
);
以上代码将创建一个名为employee的表,包含emp_no、emp_name、hire_date和salary四个列,其中emp_no是主键。其中,INT表示整数类型,VARCHAR表示可变长度字符类型,DATE表示日期类型,DECIMAL表示十进制精度类型。
2.2 ALTER TABLE
ALTER TABLE语句用于修改已有数据库表中的列。ALTER TABLE语句的基本语法为:
ALTER TABLE table_name
ALTER COLUMN column_name datatype;
其中,table_name表示需要修改的数据库表名,column_name表示需要修改的列名,datatype表示修改后的数据类型。
下面是一个ALTER TABLE语句示例:
ALTER TABLE employee
ALTER COLUMN salary DECIMAL(12, 2);
以上代码将employee表中的salary列的数据类型由DECIMAL(10, 2)修改为DECIMAL(12, 2)。
3.插入、更新和删除数据
3.1 INSERT INTO
INSERT INTO语句用于向数据库表中插入新的记录。其基本语法为:
INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);
其中,table_name表示需要插入数据的数据库表名,(column1, column2, column3, ...)表示需要插入数据的列名列表,(value1, value2, value3, ...)表示需要插入的值列表。
下面是一个INSERT INTO语句示例:
INSERT INTO employee (emp_no, emp_name, hire_date, salary)
VALUES (1, 'Peter', '2020-01-01', 5000.00);
以上代码将向employee表中插入一条新的记录,其中emp_no为1,emp_name为Peter,hire_date为2020-01-01,salary为5000.00。
3.2 UPDATE
UPDATE语句用于更新数据库表中的记录。其基本语法为:
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
其中,table_name表示需要更新数据的数据库表名,SET column1 = value1, column2 = value2, ...表示需要更新的列名和相应的值,WHERE condition表示满足指定条件的记录需要被更新。
下面是一个UPDATE语句示例:
UPDATE employee
SET salary = 6000.00
WHERE emp_no = 1;
以上代码将employee表中emp_no为1的记录的salary列更新为6000.00。
3.3 DELETE
DELETE语句用于从数据库表中删除记录。其基本语法为:
DELETE FROM table_name
WHERE condition;
其中,table_name表示需要删除数据的数据库表名,WHERE condition表示满足指定条件的记录需要被删除。
下面是一个DELETE语句示例:
DELETE FROM employee
WHERE emp_no = 1;
以上代码将employee表中emp_no为1的记录删除。
4.查询数据
4.1 SELECT
SELECT语句用于从数据库表中查询数据。其基本语法为:
SELECT column1, column2, ...
FROM table_name
WHERE condition;
其中,column1, column2, ...表示需要查询的列名,table_name表示需要查询的数据库表名,WHERE condition表示满足指定条件的记录需要被查询。
以下是一个SELECT语句的示例:
SELECT emp_no, emp_name, hire_date, salary
FROM employee
WHERE salary > 5000.00;
以上代码将从employee表中查询salary大于5000.00的记录的emp_no、emp_name、hire_date和salary四个列。
4.2 GROUP BY
GROUP BY语句用于将查询结果按照指定的列进行分组。其基本语法为:
SELECT column1, column2, aggregate_function(column3)
FROM table_name
WHERE condition
GROUP BY column1, column2;
其中,column1, column2表示需要分组的列名,aggregate_function(column3)表示需要对列column3进行聚合操作(如SUM、AVG等),WHERE condition表示满足指定条件的记录需要被查询。
以下是一个GROUP BY语句的示例:
SELECT emp_name, SUM(salary)
FROM employee
GROUP BY emp_name;
以上代码将从employee表中按照emp_name列进行分组,并对salary列进行求和。
4.3 JOIN
JOIN语句用于将两个或多个数据库表中的数据合并为一张表。其基本语法为:
SELECT column1, column2, ...
FROM table_name1
JOIN table_name2
ON table_name1.column_name = table_name2.column_name;
其中,column1, column2, ...表示需要查询的列名,table_name1, table_name2表示需要连接的表名,ON table_name1.column_name = table_name2.column_name表示连接的条件。
以下是一个JOIN语句的示例:
SELECT emp_name, salary, dept_name
FROM employee
JOIN department
ON employee.dept_no = department.dept_no;
以上代码将从employee和department两张表中查询emp_name、salary、dept_name三个列,并根据dept_no进行连接。
5.总结
本文介绍了MSSQL语句的基本语法以及常用的语句示例。通过学习本文,相信读者已经掌握了MSSQL语句的基本用法,可以在实际开发中运用自如。