小编Bri*_*dge的帖子

ClickHouse如何实现自动增量?

我希望一列在每次插入时都有唯一的值。在 SQL 中,我们可以使用自动增量来实现此功能,在 Clickhouse 中,我们可以使用自动增量或任何其他类型等任何类型来实现此功能吗?我是 Clickhouse 的新手,因此可能存在术语错误。

sql clickhouse

10
推荐指数
2
解决办法
2万
查看次数

是否有任何工具可以估算MongoDB中的索引大小?

我正在寻找一种工具,可以根据以下几个信号对MongoDB索引的大小进行合理估计:

  • 我的收藏中有多少文件
  • 索引字段的大小
  • 如果不是ObjectId,我正在使用_id的大小
  • 地理/非地理

有没有人偶然发现这样的事情?我可以想象,一旦Mongo的性能下降,一旦它撞到内存墙并且文档开始被分页到磁盘,这将是非常有用的.如果我有一个正常运行的数据库并且想要添加另一个索引,那么我唯一能够知道它是否太大的方法就是实际添加它.

它不需要精确到位,但是对于B-Trees和索引实现的一些假设,我确信它可能足够合理有用.

如果这不存在,我想建立并开源它,所以如果我错过了这个计算所需的任何参数,请在你的答案中包含.

indexing b-tree mongodb

9
推荐指数
1
解决办法
6123
查看次数

TSQL - 在select中循环?

在SQL服务器中

好吧,所以我正在使用一个数据库表,其中行可以有父行,然后可以拥有自己的父行.我需要选择根'row'.我不知道这样做的最好方法.

有一个名为ParentId的字段,它将行链接到具有该ID的行.当ParentId = 0时,它是根行.

这是我的查询:

SELECT Releases.Name,WorkLog.WorkLogId 

FROM WorkLog,Releases
WHERE
Releases.ReleaseId = WorkLog.ReleaseId
and WorkLogDateTime >= @StartDate
and WorkLogDateTime <= @end
Run Code Online (Sandbox Code Playgroud)

我真的不需要子版本的版本名称,我只想要根版本名称,所以我想选择这样的While循环的结果:

WHILE (ParentReleaseId != 0)
BEGIN
@ReleaseId = ParentReleaseId
END

Select Release.Name
where Release.RealeaseId = @ReleaseId
Run Code Online (Sandbox Code Playgroud)

我知道语法很糟糕,但希望我能告诉你我想要实现的目标.

t-sql sql-server while-loop sql-server-2008

9
推荐指数
1
解决办法
8646
查看次数

我是否需要在foreach之前检查Enumerable的Count()

Count()对集合进行迭代/预处理之前,是否有任何速度改进或确实指向检查Enumerable?

List<int> numbers = new List<int>();

if(numbers.Count() > 0)
{
    foreach(var i in numbers) {/*Do something*/}
}
Run Code Online (Sandbox Code Playgroud)

c#

9
推荐指数
1
解决办法
3990
查看次数

舍入小数值

我在使用C#舍入十进制值时遇到问题 Math.Round(a, 2);

当我将1.275舍入2小数点时,结果是1.27.当我为1.375做同样的事情时,结果是1.38.

为什么它不是在1.275到1.28之间?

谢谢

c# floating-point

8
推荐指数
2
解决办法
3401
查看次数

主表节点丢失

我已经安装了Micrososoft SQL Server 2012 Express.当我启动Managament Studio时,我无法在系统数据库中查看任何"表节点".

这是一个错误吗?

sql-server sql-server-2012

8
推荐指数
1
解决办法
1184
查看次数

如何在保证Y某些特定行在结果中的同时选择X随机行?

假设一个表结构:

Create Table Question
{
ID int pk,
Category varchar
Stem varchar,
AnswerA varchar,
...
AnswerD varchar,
Correct char,
isMandatory bit

}
Run Code Online (Sandbox Code Playgroud)

对于给定的类别,大约有50个问题.可以有1-10个强制性问题.

我需要随机选择所有必修问题,然后提出足够的其他问题来提出20个问题.

sql-server random select sql-server-2008

7
推荐指数
2
解决办法
1471
查看次数

创建Excel工作表时出现NullReferenceException

我想填写一个excel文件,所以我使用ExcelPackage:Office Open XML格式.但我有一个错误.我的代码:

string fileName = "DBE_BAKIM_FORMU" + ".xlsx";
FileInfo fi = new FileInfo(HttpContext.Current.Server.MapPath("~/") + fileName);

using (ExcelPackage xlPackage = new ExcelPackage(fi))
{
    ExcelWorksheet worksheet = xlPackage.Workbook.Worksheets[1];
    dbeDataContext db = new dbeDataContext();
    CAGRI c = (from x in db.CAGRIs where x.CagriID == ID select x).SingleOrDefault();
    USER u = (from x in db.USERs where x.UserID == Convert.ToInt32(Session["user"]) select x).SingleOrDefault();

    worksheet.Cell(6, 3).Value = c.TalepTarihi.ToShortDateString();
    worksheet.Cell(7, 3).Value = c.TalepTuru;
    worksheet.Cell(8, 3).Value = c.ModulAdi;
    worksheet.Cell(9, 3).Value = c.EkranRaporAdi;
    worksheet.Cell(10, 3).Value = c.VerilenSure;
    worksheet.Cell(11, 4).Value …
Run Code Online (Sandbox Code Playgroud)

c# asp.net visual-studio-2010 nullreferenceexception excelpackage

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

动态COM对象是否被视为托管资源?

我有一个dynamicCOM对象作为我班级的私人领域.我不确定它是否被视为托管资源(GC清理它).

private dynamic _comConnector = null;
Run Code Online (Sandbox Code Playgroud)

...

_comConnector = Activator.CreateInstance(Type.GetTypeFromProgID("SomeProgId"));
Run Code Online (Sandbox Code Playgroud)

在实现IDispose时,我应该将其清理为托管资源(仅在显式调用Dispose()时),还是作为本机资源(从终结器调用Dispose(false)时)?

private void Dispose(bool disposing)
{
    if (disposing)
    {
        // Free managed resources //

        // --> Should I call Marshal.FinalReleaseComObject(_comConnector) here?
    }

    // Free unmanaged resources //

    // --> Or maybe here?
}
Run Code Online (Sandbox Code Playgroud)

c# com idisposable c#-4.0

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

嵌套if else语句

我正在创建一个函数来返回'0'或'1',具体取决于嵌套if else语句的结果.使用MSSQL.

ALTER FUNCTION udf_check_names_starting_with_quotationmark
(@string NVARCHAR(100))
RETURNS INT
AS
BEGIN
  DECLARE @condition INT
  SET @string = LTRIM(@string)
  SET @string = RTRIM(@string)

  IF (PATINDEX('"%', @string) !=0)
    BEGIN
      SET @condition = 1
    END
  ELSE IF (PATINDEX('%"%', @string) !=0) 
    BEGIN
      SET @condition=1
    END
  ELSE IF (PATINDEX('%"', @string) !=0)
    BEGIN
      SET @condition = 1
    END
  ELSE
    BEGIN
      SET @condition=0
    END
  RETURN @condition
END
Run Code Online (Sandbox Code Playgroud)

这一切都很好.有没有更好的方法来实现这一点(我尝试使用OR但SQL编辑器显示错误,而不是识别OR).

sql t-sql sql-server

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