我有一张桌子:
Id Catg
1 cat01
2 cat01
3 cat01
1 cat02
2 cat02
Run Code Online (Sandbox Code Playgroud)
现在我要检测catg01和catg02的发生次数,就像在这个例子中,catg01是3次而catg02是2次,我想通过LINQ/simple db查询来计算.请注意:不能使用Where子句和硬编码Catg01/catg 02,因为可以有多个类别.是否可以检测?如果是,那么请帮助.
据我所知(或者我认为我理解),作为指针的变量只存储其值的内存地址.
让我们说:
int x = 5;
NSString *str1 = [NSString stringWithCString:"one"];
Run Code Online (Sandbox Code Playgroud)
那么x的值是5.这就是我在调试器中看到的,当我在那里放置断点时.
但:
str1的值不是"一".它是一个像bfffd3d0这样的内存地址.这就是我在调试器的"值"字段中看到的,当我停在那里时.因此,这个bfffd3d0内存地址背后是NSString对象,它具有巨大的数据结构(假设它很庞大),大量的实例变量,值等等.这几乎是对的吗?
我不是在谈论变量名本身的内存,而是关于变量"引用"或指向或存储的值或其他内容.
我的开发机器上只有SQL Server 2008(开发版)
我的托管公司只提供SQL Server 2005(我没有对此数据库的直接连接访问权限)
我只是想知道最好的方法是什么:
据我所知......
复制 - 不是选项,因为我无法连接到生产数据库.
恢复备份 - 不是一个选项,因为据我所见,您无法从2008年导出可恢复的数据库(即使在2005兼容模式下设置2008 DB),恢复生产也没有意义无论如何,在我的开发版本的顶部.
转储我的2008数据库中的所有脚本,从2008 - > 2005将我的开发还原到机器,然后从脚本重新创建数据库,然后使用备份和恢复将初始数据库投入生产,然后通过Web面板运行脚本那一点起
转储我的2008数据库中的所有脚本,并从生产中的脚本生成整个2005数据库.然后从那时起通过Web面板运行脚本
使用最后两个选项,我可能需要使用一些工具(我认为存在于Web上)编写所有数据插入的脚本
还有其他可能的解决方案,我没有考虑.
我正在尝试根据分数生成一个简单的排名表.
例如,给出以下内容
List<Player> players = new List<Player>() {
new Player { Name = "John", Score = 2 },
new Player { Name = "Mary", Score = 1 },
new Player { Name = "Bob", Score = 2 },
new Player { Name = "Alice", Score = 3 },
};
var results = players
.OrderByDescending(o => o.Score)
.Select((v,i) => new { Name = v.Name, Score = v.Score, Position = i+1} );
Run Code Online (Sandbox Code Playgroud)
结果将是.
Name Score Pos
Alice 3 1
John 2 2 …Run Code Online (Sandbox Code Playgroud) sql-server ×2
.net ×1
.net-4.5 ×1
backup ×1
c# ×1
linq ×1
objective-c ×1
pointers ×1
restore ×1
select ×1