小编Ris*_*osh的帖子

如果有容量,如何编写将乘客安排到公交车上的查询?

公共汽车和乘客到达车站。如果某时间有一辆公共汽车到达车站tbus ,并且某时间有一名乘客到达tpassenger where tpassenger <= tbus,则该乘客将尝试使用第一辆未超出容量的可用公共汽车。

如果公交车到达车站时等待的乘客数量超过了其容量capacity,则只有capacity乘客才会乘坐公交车。

我想输出每辆公交车上出现的用户(如果两个乘客同时到达,则应优先考虑passenger_id值较小的乘客)。

输入:

巴士表:

总线 ID 到达时间 容量
1 2 1
2 4 10
3 7 2

旅客表:

乘客 ID 到达时间
11 1
12 1
13 5
14 6
15 7

输出:

总线 ID 容量 b_到达 乘客 ID p_到达
1 1 2 1 11 1
2 10 4 1 12 1
2 10 4 2 无效的 无效的
2 10 4 3 无效的 无效的
2 10 4 …

sql-server query interview-question

7
推荐指数
1
解决办法
1116
查看次数

有没有办法按字母数字列排序?

我有一个表单位

单位名称
单元1
2b单元
2c单元
单元2a
单元10
单元3a
3c单元
第11单元

我想排序相同

单位名称
单元1
单元2a
2b单元
2c单元
单元3a
3c单元
单元10
第11单元

我们如何在 t-sql 中实现这一点?

数据定义语言

create table units (unitname varchar(20))
insert into units values ('unit 1'),('unit 2b'),('unit 2c'),
('unit 2a'),('unit 10'),('unit 3a'),('unit 3c'),('unit 11')
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server-2012

5
推荐指数
1
解决办法
510
查看次数

如何优化存储过程并减少表扫描?

我有一个存储过程,可以识别上次 SSIS 作业运行中候选人信息的任何更改。然后它继续将更改保存在同步表中。

\n
CREATE PROCEDURE [dbo].[IdentifyCandidateChanges]\xc2\xa0\xc2\xa0\n(\xc2\xa0\xc2\xa0\n@MoreToProcess BIT = 0 OUTPUT\xc2\xa0\xc2\xa0\n)\xc2\xa0\xc2\xa0\nAS\xc2\xa0\xc2\xa0\n\nSET NOCOUNT ON\xc2\xa0\xc2\xa0\n\nDECLARE @BatchSize INT\xc2\xa0\xc2\xa0\n\nSELECT\xc2\xa0\xc2\xa0\n@MoreToProcess = 0\xc2\xa0\xc2\xa0\n, @BatchSize = 200000\xc2\xa0\xc2\xa0\n\nDECLARE @Changes TABLE\xc2\xa0\xc2\xa0\n(\xc2\xa0\xc2\xa0\n  CandidateNo VARCHAR(10) NOT NULL\xc2\xa0\xc2\xa0\n, CentreNo CHAR(5) NOT NULL\xc2\xa0\xc2\xa0\n, CandidateModifiedDate DATETIME NOT NULL\xc2\xa0\xc2\xa0\n, ChangeStatus CHAR(1) NOT NULL\xc2\xa0\xc2\xa0\n)\xc2\xa0\xc2\xa0\n\n-- If this is the first run (or the CandidateSync table is empty for another reason) then just take the hit now\xc2\xa0\xc2\xa0\n-- and process the entire set of candidates in one go.\xc2\xa0\xc2\xa0\n\nIF EXISTS(SELECT TOP 1 1 FROM CandidateSync)\xc2\xa0\xc2\xa0\nSET ROWCOUNT @BatchSize\xc2\xa0\xc2\xa0\n\nINSERT INTO @Changes\xc2\xa0\xc2\xa0\n(\xc2\xa0\xc2\xa0\n  CandidateNo\xc2\xa0\xc2\xa0\n, …
Run Code Online (Sandbox Code Playgroud)

sql-server sql-server-2012 query-performance

2
推荐指数
1
解决办法
1192
查看次数