小编And*_*y M的帖子

t-sql select在几年内获得所有月份

我需要一个选择来返回月份和年份在指定的日期范围内我将输入开始年份和月份,而选择将返回从我输入的日期到今天的月份和年份.

我知道我可以循环执行此操作,但我想知道是否可以在一系列选择中执行此操作?

Year  Month
----  -----
2010  1
2010  2
2010  3
2010  4
2010  5
2010  6
2010  7
Run Code Online (Sandbox Code Playgroud)

等等.

sql t-sql sql-server sql-server-2008

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

TTabControl的标题

我正在寻找一种在一组标签之前实现一种插入标题的方法,如下所示:

在此输入图像描述

标签集不应该是多行的,只是水平的并且在顶部布局.但是,当选项卡太多时,它应该可以正确滚动.

我担心在使用第三方控件时我会受到限制,但我可以在标准TTabControl上使用子类来为标准外观和行为添加必要的更改.(我不需要它是TPageControl,因为它只是我感兴趣的选项卡的特定排列.)

也许有一些方法可以通过巧妙安排的标准控制组合实现这一点,尽管我的努力,但它已经逃过了我.

基本上,任何想法或指针都是受欢迎的.

哦,还有其他要求,它应该与桌面主题完美融合.

delphi customization tabcontrol caption delphi-2010

6
推荐指数
1
解决办法
813
查看次数

在MS访问中进行升级

我需要为MS-Access 2000编写SQL查询,以便在存在时更新行,但如果不存在则插入.(我相信这被称为"upsert")

如果行存在...

UPDATE Table1 SET (...) WHERE Column1='SomeValue'
Run Code Online (Sandbox Code Playgroud)

如果它不存在......

INSERT INTO Table1 VALUES (...)
Run Code Online (Sandbox Code Playgroud)

这可以在一个查询中完成吗?

sql ms-access upsert

6
推荐指数
3
解决办法
9922
查看次数

SW-Design:Delphi中的类层次结构适配器(泛型与下行)

我想对以下问题提出一些建议:假设你想为VCL控件编写适配器.所有适配器应具有相同的基类,但在包装特殊控件方面有所不同(例如,从TEdit获取值与从TSpinEdit获取值不同).所以第一个想法就是创建一个类层次结构

TAdapter = class
end;

TEditAdapter = class (TAdapter)
end;

TSpinEditAdapter = class (TAdapter)
end;
Run Code Online (Sandbox Code Playgroud)

现在我想引入一个字段来保存对vcl控件的引用.在我的特殊适配器中,我想 - 当然 - 使用具体的子类.但是Base类还应该包含一个引用(例如,如果我想使用适配器使控件可见).

可能性1(物业存取中的向下):

TAdapter = class
protected
  FCtrl : TControl;
end;

TEditAdapter = class (TAdapter)
  public
    property Control : TEdit read GetControl write Setcontrol;
end;
{...}
function TEditAdapter.GetControl : TEdit;
begin
  Result := FCtrl as TEdit;
end;
Run Code Online (Sandbox Code Playgroud)

因此,如果我实现一个特定的方法,我使用属性Control,如果我在基类中执行某些操作,则使用protected字段.

可能性2(使用通用基类):

TAdapter = class
end;

TAdapter <T : TControl> = class (TAdapter)
protected
  FCtrl : T;
end;

TEditAdapter = class (TAdapter <TEdit>)
end;
Run Code Online (Sandbox Code Playgroud)

您更喜欢哪种解决方案?还是有第三种解决方案,哪种更好? …

delphi generics inheritance software-design downcast

6
推荐指数
1
解决办法
466
查看次数

GROUP_CONCAT用分隔符拉出空结果

我昨天问了一个关于如何将多个结果输入一个字段的问题并给出了答案GROUP_CONTACT().

我把它放到我的代码中,它工作正常.我需要为两个字段执行此操作,因此我现在已经开始在相同的sql语句中使用它两次.不幸的是,它用逗号拉回第二个字段的空列表,我不太清楚为什么.

这是我的示例产品数据:

pid || prod
1   || top
2   || sweater
Run Code Online (Sandbox Code Playgroud)

这是我的样本库存数据(有些库存没有两种尺寸,例如腰围和胸围):

sid || size1 || size2 || pid
1   || M     ||       || 1
2   || L     ||       || 1
3   || XL    ||       || 1
4   || L     ||       || 2
5   || XL    ||       || 2
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

SELECT p.id, GROUP_CONCAT(s.size1) size1, GROUP_CONCAT(s.size2) size2, p.prod
FROM products p JOIN stock s ON s.prodid = p.id
Run Code Online (Sandbox Code Playgroud)

这是它应该带来的:

pid || size1  || size2 || prod
1   || …
Run Code Online (Sandbox Code Playgroud)

php sql

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

从任务计划程序运行批处理文件不能使用java命令

从任务计划程序运行批处理文件不能使用.bat文件中的java命令.如果我手动运行.bat文件,它的工作正常.

这是我正在尝试安排的简单的.bat文件

set JAVA_HOME=C:\Program Files (x86)\Java\jdk1.6.0_24;
set CMD= "%JAVA_HOME%\bin\java" -version

echo %CMD%
%CMD%
Run Code Online (Sandbox Code Playgroud)

windows batch-file scheduled-tasks

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

如何从Kubernetes集群外部连接到CockroachDB?

根据文档,我已经设置并部署了包含三个CockroachDB pod的Kubernetes状态集.我的最终目标是在不需要使用kubectl的情况下查询数据库.我的中间目标是查询数据库而不实际炮轰到数据库pod中.

我将一个端口从一个端口转发到我的本地机器,并尝试连接:

$ kubectl port-forward cockroachdb-0 26257
Forwarding from 127.0.0.1:26257 -> 26257
Forwarding from [::1]:26257 -> 26257

# later, after attempting to connect:
Handling connection for 26257
E0607 16:32:20.047098   80112 portforward.go:329] an error occurred forwarding 26257 -> 26257: error forwarding port 26257 to pod cockroachdb-0_mc-red, uid : exit status 1: 2017/06/07 04:32:19 socat[40115] E connect(5, AF=2 127.0.0.1:26257, 16): Connection refused


$ cockroach node ls --insecure --host localhost --port 26257
Error: unable to connect or connection lost.

Please check …
Run Code Online (Sandbox Code Playgroud)

portforwarding kubernetes cockroachdb

6
推荐指数
1
解决办法
1022
查看次数

将字符串变量转换为GUID

我想使用Execute SQL Task查询varbinary从数据库表中返回数据.查询需要一个参数,UniqueIdentifier参数存储string在Package变量中.此查询的结果(varbinary数据)将存储在Byte类型的第二个变量中.

下表显示了我的局部变量列表,请注意DocumentGuid是由控制流的另一部分预先填充的

| Variable Name | Qualified Name     | Scope   | Data Type | Comments                                 |
|---------------|--------------------|---------|-----------|------------------------------------------|
| DocumentGuid  | User::DocumentGuid | Package | String    | Used to store a GUID value               |
| DocumentData  | User::DocumentData | Package | Byte      | Used to hold varbinary data from a query |
Run Code Online (Sandbox Code Playgroud)

当我尝试在这样的Execute SQL Task查询中使用它时:

SELECT DocData 
FROM  docsRepo
WHERE DocumentGuid = ?
Run Code Online (Sandbox Code Playgroud)

传递参数为

| …
Run Code Online (Sandbox Code Playgroud)

sql sql-server ssis uniqueidentifier ssis-2008

6
推荐指数
1
解决办法
1091
查看次数

在SQL中执行pivot-table-ish JOIN

我的雇主有一个批处理计算集群,用于处理用户提交的作业.每个批处理作业包括三个步骤:

  1. 工作开始了
  2. 工作完成了
  3. 结果报告给用户

批处理作业管理软件在每个步骤发生时记录,日志文件由一个元组组成,该元组具有提交作业的员工的ID代码,发生的步骤以及发生时间的时间戳.在CSV中,它看起来像:

ID  step    timestamp
--  ------  ---------
A   start   3533
B   start   3538
B   finish  3549
C   start   3551
A   finish  3557
B   report  3559
C   finish  3602
A   report  3603
B   start   3611
C   report  3623
B   finish  3643
B   report  3657
Run Code Online (Sandbox Code Playgroud)

等等.

数据集的另一个特点是员工之间存在共识,但员工之间并不相同; 也就是说,每个员工必须等到他们当前的工作在下一个工作开始前报告.因此,当我按日期排序并将结果限制为单个员工时,记录总是以"开始","完成","报告"的顺序出现.

我想创建一个数据透视表,将每个作业分组到一行.所以上面的数据变成:

employee-ID  started  finished  reported
-----------  -------  --------  --------
A            3533     3557      3603
B            3538     3549      3559
B            3611     3643      3657
C            3551     3602      3623
Run Code Online (Sandbox Code Playgroud)

那么,对于SQL:

SELECT
    log.ID AS employee-ID, …
Run Code Online (Sandbox Code Playgroud)

sql join subquery left-join

5
推荐指数
1
解决办法
1499
查看次数

如何在SQL中获取当年的所有周末日期?

我试过但无法得到正确的解决方案.我想要一个SQL查询,列出当前年份的所有周末日期.

我试过这个SQL查询:

WITH hier(num, lvl) AS (
    SELECT  0, 1
            UNION ALL
    SELECT  100, 1
            UNION ALL 
    SELECT  num + 1, lvl + 1
    FROM    hier
    WHERE   lvl < 100 
)
SELECT lvl [Week], 
convert(date,DATEADD(dw, -DATEPART(dw, DATEADD(wk,DATEDIFF(wk,0,'12/31/'+convert(nvarchar,YEAR(getdate()))), 0)+6 ),
DATEADD(wk, DATEDIFF(wk,0,'12/31/'+convert(nvarchar,YEAR(getdate()))), 0)+6 ) - num  * 7,101) [End Date]
FROM    hier a
where   num < 52
ORDER BY [End Date] asc
Run Code Online (Sandbox Code Playgroud)

它的输出是这样的:

Week  End date
52  2012-01-14
51  2012-01-21
50  2012-01-28
49  2012-02-04
Run Code Online (Sandbox Code Playgroud)

我希望日期从头开始 - 所以,上面缺少一个周末,这是2012-07-01.此外,我希望周数显示1, 2, …

sql sql-server-2008

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