我有一个简单的选择语句.我想添加一个临时列,它将对结果集中的行进行编号.我试过这个 -
declare @num int
set @num = 0;
select t.A, t.B, t.C, (@count + 1) as number
from tableZ as t
Run Code Online (Sandbox Code Playgroud)
它将1分配给所有行.我试过@count = @count + 1但它没有用.我该如何以简单的方式做这件事?
谢谢.
我将列ID设置为IDENTITY with seed且increment = 1,1.但是,它不会从1开始计数.而是从2开始.当我插入下一行时,它设置ID = 7而不是2.为什么会发生这种情况,如何解决?
我编写了表格并检查了管理工作室.它实际上是一个IDENTITY(1,1).
我试图通过Workbench/J连接到SQL Server 2005.我为jdbc字符串正确输入了所有内容,我可以连接到所需的服务器.但是,我必须为具有数据库名称的表键入完全限定名称.我不想那样做.我将我的instanceName设置为数据库,它对我不起作用.
有没有办法连接数据库而不仅仅是服务器?
jdbc:sqlserver://serverName[\instanceName][:portNumber]
Run Code Online (Sandbox Code Playgroud) 我有一张看起来像这样的桌子 -
Id AttributeName AttributeValue
A1 Atr1 A1V1
A1 Atr2 A1V2
A1 Atr3 A1V3
A2 Atr1 A2V1
A2 Atr2 A2V2
A2 Atr3 A3V3
Run Code Online (Sandbox Code Playgroud)
该表中的每个ID具有完全相同的属性,即ATR1,ATR2,ATR3.这些属性的值是唯一的.
我想透过这个表并得到以下输出 -
Id Atr1 Atr2 Atr3
A1 A1V1 A1V2 A1V3
A2 A2V1 A2V2 A2V3
Run Code Online (Sandbox Code Playgroud)
我该怎么做呢 ?
我尝试了一个查询,它失败并出现错误 - 消息156,级别15,状态1,行21错误的语法在关键字'FOR'附近.
-- Create a temporary table
DECLARE @MyTable TABLE
(Id varchar(25),
AttributeName varchar(30),
AttributeValue varchar(30))
-- Load Sample Data
INSERT INTO @MyTable VALUES ('A1', 'Atr1', 'A1V1')
INSERT INTO @MyTable VALUES ('A1', 'Atr2', 'A1V2')
INSERT INTO @MyTable VALUES ('A1', …Run Code Online (Sandbox Code Playgroud) 我有一个名为message的数组.当用户输入"下一个"时,我移动到下一个索引.同样,对于以前.我希望能够以一种简单的方式转移到下一个和上一个.我知道下一个但不是之前的简单方法.我该怎么做 ?
array[] message = {"Hello", "good", "people", "!"};//index starts at 0
int currentIndex = 0;
int next = 2;//an option which can be used in an if or switch-case
int previous = 1;
Run Code Online (Sandbox Code Playgroud)
要进入下一个元素 -
moveNext(){
int currentIndex = (currentIndex + 1) % message.length;
}
//Any neat trick, similar to the one for moveNext() ?
movePrevious(){
//Yes, you can use an if-else check here, but I am trying to avoid that.
}
Run Code Online (Sandbox Code Playgroud)
编辑 -
Example - Array is of …Run Code Online (Sandbox Code Playgroud)