我想做一个返回这样的(MS)SQL查询:
Col1 Col2 Col3
---- --------------------- ------
AAA 18.92 18.92
BBB 20.00 40.00
AAA 30.84 30.84
BBB 06.00 12.00
AAA 30.84 30.84
AAA 46.79 46.79
AAA 86.40 86.40
Run Code Online (Sandbox Code Playgroud)
其中当Col1 = AAA时Col3等于Col2,而当Col1 = BBB时Col3是Col2的两倍.有人能指出我的方向吗?
我有一个大表,我想优化.我正在使用MS-SQL 2005服务器.我将尝试描述它是如何使用的,如果有人有任何建议我会非常感激.
该表约为400GB,每天插入1亿行和100万行.该表有8列,1列数据和7列用于查找/排序.
k1 k2 k3 k4 k5 k6 k7 d1
Run Code Online (Sandbox Code Playgroud)
哪里
k1: varchar(3), primary key - clustered index, 10 possible values
k2: bigint, primary key - clustered index, total rows/10 possible values
k3: int, 10 possible values
k4: money, 100 possible values
k5: bool
k6: bool
k7: DateTime
Run Code Online (Sandbox Code Playgroud)
只运行一个选择查询,如下所示:
SELECT TOP(g) d1 FROM table WITH(NOLOCK)
WHERE k1 = a
AND k3 = c
AND k4 = d
AND k5 = e
AND k6 = f
ORDER BY k7
Run Code Online (Sandbox Code Playgroud)
其中g …
我正在尝试使用VS2008 SP1和x64 XP运行NAnt 0.86b1.
我有一个基本的构建文件(下面)给出错误不支持文件'Solution.sln'的解决方案格式.
<property name="nant.settings.currentframework" value="net-3.5" />
<target name="build" description="Full Rebuild" depends="clean,compile" />
<target name="clean" description="Cleans outputs">
<delete dir="bin" failonerror="false" />
<delete dir="obj" failonerror="false" />
</target>
<target name="compile" description="Compiles solution">
<solution configuration="debug" solutionfile="Solution.sln" />
</target>
Run Code Online (Sandbox Code Playgroud)
还有其他人遇到过这个问题吗?我找不到任何有用的东西.
我有一张像这样的桌子:
keyA keyB data
Run Code Online (Sandbox Code Playgroud)
keyA和keyB一起是唯一的,是我表的主键,并构成聚簇索引.
keyB有5个可能的值,但keyA的可能值不限.keyB通常递增.
例如,以下数据可以按两种方式排序,具体取决于首先订购的键列:
keyA keyB data
A 1 X
B 1 X
A 3 X
B 3 X
A 5 X
B 5 X
A 7 X
B 7 X
Run Code Online (Sandbox Code Playgroud)
要么
keyA keyB data
A 1 X
A 3 X
A 5 X
A 7 X
B 1 X
B 3 X
B 5 X
B 7 X
Run Code Online (Sandbox Code Playgroud)
我是否需要告知聚簇索引哪些键列具有较少的可能值,以允许它首先按该值对数据进行排序?或者在首先订购的性能方面无关紧要?
帮助我在这里解决争论.
这是:
SqlCommand cmd = new SqlCommand( "sql cmd", conn);
Run Code Online (Sandbox Code Playgroud)
处理与此完全相同:
const string s = "sql cmd";
SqlCommand cmd = new SqlCommand( s, conn);
Run Code Online (Sandbox Code Playgroud)
IE浏览器.如果我明确声明字符串s是const,它会有所作为.
而且,如果没有以同样的方式对待,为什么不呢?
我有一个sproc和一些C#调用它.我的问题是两个(N)VARCHAR值只返回第一个字符.其他一切都很好.为什么只返回第一个字符?
所以
Content = (string)cmd.Parameters["@SmsContent"].Value,
ToNumber = (string) cmd.Parameters["@ToNumber"].Value,
Run Code Online (Sandbox Code Playgroud)
两者都只返回第一个字符.
这是我的特色:
ALTER PROCEDURE [dbo].[GetNextSms]
(
@SmsId UNIQUEIDENTIFIER OUTPUT,
@SmsContent NVARCHAR OUTPUT,
@ToNumber VARCHAR OUTPUT,
@TimeAccepted DATETIME OUTPUT
)
AS
BEGIN TRANSACTION
-- 1. Get 1 row
SET ROWCOUNT 1
SELECT @SmsId = SmsId FROM SendQueue
WHERE ProcessingStarted = 0
SET ROWCOUNT 0
-- 2. Set as processing
UPDATE SendQueue
SET ProcessingStarted = 1
WHERE SmsId = @SmsId
-- 3. Return data
SELECT @SmsId = SmsId,
@SmsContent = SmsContent,
@ToNumber = …Run Code Online (Sandbox Code Playgroud) 我正在寻找一种方法来为我的网站实施推荐系统.
最初我使用http://mysite.com/?affid=0001并使用查询字符串affid值中的affid来记录推荐.这样做的问题在于,从一些常见的谷歌搜索词组中,与谷歌搜索的链接出现在Google搜索中的标准链接之前,这意味着联盟会因错误地获得使用谷歌搜索我们网站的客户的信用.
我还听说有多个不同的链接引用同一页面(例如http://mysite.com/?affid=0001和http://mysite.com/?affid=0002)会导致Google降低您的排名.这是真的?
有没有人能解决这些问题?