首先,创建两张表:
Create table T_PRODUCT(
F_ID INT IDENTITY(1,1) PRIMARY KEY NOT NULL,
F_NAME NVARCHAR(50) ,
F_AGE INT,
F_SEX INT
)
Create table T_STUDENT(
F_ID INT IDENTITY(1,1) PRIMARY KEY NOT NULL,
F_PROID INT NOT NULL FOREIGN KEY(F_ID) REFERENCES T_pRODUCT,
)
执行后,插入数据,不会的,可以参考上一篇如何插入数据。
插入后,表连接查询,
内连接查询,行数为满足条件X*Y,并且on的条件对两边的表为有效控制:
SELECT * FROM T_PRODUCT P,T_STUDENT S WHERE P.F_ID =S.F_PROID ;
或者:
SELECT * FROM T_PRODUCT P INNER JOIN T_STUDENT S ON P.F_ID =S.F_PROID ;
左连接,行数为不满足条件的X1+满足条件的X2*Y,on上的条件对左边无效:
SELECT * FROM T_PRODUCT P LEFT JOIN T_STUDENT S ON P.F_ID =S.F_PROID ;
右连接,行数为不满足条件的Y1+满足条件的X*Y2,on上的条件对左边无效:
SELECT * FROM T_PRODUCT P RIGHT JOIN T_STUDENT S ON P.F_ID =S.F_PROID ;
按T_PRODUCT表ID排序:
降序:
SELECT * FROM T_PRODUCT P,T_STUDENT S WHERE P.F_ID =S.F_PROID ORDER BY P.F_ID DESC;
升序:
SELECT * FROM T_PRODUCT P,T_STUDENT S WHERE P.F_ID =S.F_PROID ORDER BY P.F_ID ASC;
分组:
SELECT * FROM T_PRODUCT P,T_STUDENT S WHERE P.F_ID =S.F_PROID GROUP BY 字段 ;
聚合函数,
COUNT,统计函数:
SELECT COUNT(所需统计的字段) FROM T_PRODUCT P;
SUM,求和函数:
SELECT SUM(求和的字段) FROM T_PRODUCT P;
MAX MIN 取最大值最小值:
SELECT MAX(取最大值的字段) ,MIN(取最小值的字段)FROM T_PRODUCT P;