我们有一个拥有数百个并发用户的大型系统,因此sql profiler在没有适当过滤器的情况下提供了太多信息.我想看看我的帐户和我的帐户下运行的SQL命令是什么.帐户是指我用来登录系统的用户名.这些用户名存储在常规数据库表中,因此不能输入到sql profiler中的任何过滤器,我想?但是,即使您使用相同的SQL登录/用户,每个登录的用户都可能拥有一些唯一的ID?
那么,问题主要是如何获得该唯一值以及使用哪个过滤器?或者有没有办法在sql profiler中看到这个和只有这个?
一个稍微棘手的SQL问题(我们正在运行SQL Server 2000).
我有下表,StoreCount -
WeekEndDate StoreCount
2010-07-25 359
2010-07-18 359
2010-07-11 358
2010-07-04 358
2010-06-27 358
2010-06-20 358
2010-06-13 358
2010-06-06 359
2010-05-30 360
2010-05-23 360
2010-05-16 360
Run Code Online (Sandbox Code Playgroud)
我想把它变成以下输出 -
StartDate EndDate StoreCount
2010-07-18 2010-07-25 359
2010-06-13 2010-07-11 358
2010-06-06 2010-06-06 359
2010-05-16 2010-05-30 360
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,我只想按顺序一起运行时对存储计数进行分组.
我想知道我们中间的SQL天才是否可以帮助我.
我VersionNo在表Versions中有一列包含'版本号'值
VersionNo
---------
1.2.3.1
1.10.3.1
1.4.7.2
Run Code Online (Sandbox Code Playgroud)
等等
我想对此进行排序,但不幸的是,当我做一个标准时order by,它被视为一个字符串,所以订单出来了
VersionNo
---------
1.10.3.1
1.2.3.1
1.4.7.2
Run Code Online (Sandbox Code Playgroud)
以下内容,这就是我所追求的:
VersionNo
---------
1.2.3.1
1.4.7.2
1.10.3.1
Run Code Online (Sandbox Code Playgroud)
所以,我需要做的是按相反的顺序排序数字(例如在abcd中,我需要按d,c,b,a排序以获得正确的排序我们).
但我仍然坚持如何以GENERIC方式实现这一目标.当然,我可以使用各种SQL函数(例如分割字符串起来left,right,substring,len,charindex),但我不能保证总是会有4个部分的版本号.我可能有这样的列表:
VersionNo
---------
1.2.3.1
1.3
1.4.7.2
1.7.1
1.10.3.1
1.16.8.0.1
Run Code Online (Sandbox Code Playgroud)
可以,有没有人有任何建议?非常感谢您的帮助.
如何将表从SQL Server 2000数据库导出到.sql文件作为一堆INSERT INTO语句?
表中的一个字段是Text数据类型并保存HTML,因此手动执行此操作将非常耗时.
我可以访问SQL Server Management Studio 2008来访问SQL Server 2000数据库.
如何在sql server 2000中为单个笔划生成所有表的脚本.
我使用链接服务器在远程Sql Server中插入记录,现在我想获取插入记录的ID.类似于scope_identity()本地服务器的东西.我的远程sql server是2000版.
我看过这篇文章,但我无法在远程sql server中添加任何存储过程
我正在c#中创建一个winform应用程序并使用sql数据库.
我有一个表,employee_master它有像Id, name, address和的列phone no.Id是自动增量和所有其他数据类型varchar.
我正在使用此代码获取下一个自动增量值:
string s = "select max(id) as Id from Employee_Master";
SqlCommand cmd = new SqlCommand(s, obj.con);
SqlDataReader dr = cmd.ExecuteReader();
dr.Read();
int i = Convert.ToInt16(dr["Id"].ToString());
txtId.Text = (i + 1).ToString();
Run Code Online (Sandbox Code Playgroud)
我在textBox上显示.
但是当删除表中的最后一行时,我仍然得到最近在文本框中删除的值
我该如何获得下一个自动增量值?
表格1
ID
01
wire
02
steve
ram123
03
....
Run Code Online (Sandbox Code Playgroud)
从table1我想只选择数值,它不应该显示像(ram123)这样的字母数字值
预期产出
01
02
03
....
Run Code Online (Sandbox Code Playgroud)
如何查询此条件
我正在SQL Server 2000(和2005)中构建一个视图,我注意到连接语句的顺序极大地影响了查询的执行计划和速度.
select sr.WTSASessionRangeID,
-- bunch of other columns
from WTSAVW_UserSessionRange us
inner join WTSA_SessionRange sr on sr.WTSASessionRangeID = us.WTSASessionRangeID
left outer join WTSA_SessionRangeTutor srt on srt.WTSASessionRangeID = sr.WTSASessionRangeID
left outer join WTSA_SessionRangeClass src on src.WTSASessionRangeID = sr.WTSASessionRangeID
left outer join WTSA_SessionRangeStream srs on srs.WTSASessionRangeID = sr.WTSASessionRangeID
--left outer join MO_Stream ms on ms.MOStreamID = srs.MOStreamID
left outer join WTSA_SessionRangeEnrolmentPeriod srep on srep.WTSASessionRangeID = sr.WTSASessionRangeID
left outer join WTSA_SessionRangeStudent stsd on stsd.WTSASessionRangeID = sr.WTSASessionRangeID
left outer join WTSA_SessionSubrange ssr …Run Code Online (Sandbox Code Playgroud) sql-server optimization join sql-server-2005 sql-server-2000
sql-server ×10
sql-server-2000 ×10
sql ×6
t-sql ×4
c# ×1
data-export ×1
join ×1
optimization ×1
sorting ×1
winforms ×1