查找与一个已知数相邻的前一个数和后一个数
举例解释:在班级排名表中,已经知道张无忌的排名和分数等相关信息,但是想要知道与之相邻的前一个人是谁或者后一个人是谁
1. 数据库的设计和实现
--创建数据库
CREATE DATABASE school
ON PRIMARY
(
NAME = 'school_data',
FILENAME = 'D:\data\school_data.mdf',
SIZE = 5MB,
MAXSIZE = 50MB,
FILEGROWTH = 10%
)
LOG ON
(
NAME = 'school_log',
FILENAME = 'D:\data\school_log.ldf',
SIZE = 1MB,
FILEGROWTH = 10%
)
2.数据表的设计和实现
--创建数据表
CREATE TABLE student
(
stuNo VARCHAR(16) NOT NULL,
stuName VARCHAR(32) NOT NULL,
stuSex VARCHAR(8) NOT NULL,
stuAge INT NOT NULL,
stuSeat INT NOT NULL,
)
**3.表中数据的插入(**在此为了演示只插入了三条数据)
INSERT INTO student VALUES('S2001','张三丰','男',17,1)
INSERT INTO student VALUES('S2002','张无忌','男',15,2)
INSERT INTO student VALUES('S2003','梅超风','男',20,3)
4.查找前一个人和后一个人
方法一
DECLARE @number INT
SELECT @number = stuSeat FROM student where stuName = '张无忌'
SELECT * FROM student where stuSeat = @number+1 OR stuSeat = @number-1
方法二
DECLARE @number INT
SELECT @number = stuSeat FROM student where stuName = '张无忌'
SELECT * FROM student WHERE stuSeat in(@number+1, @number-1)
上述方法能帮助你更快更准确的查找数据,了解更多关注我呦!!!