小编Ian*_*oyd的帖子

使用 RANK() OVER 计数时跳过空值

给定一组行,有时有字段null,有时没有:

SELECT 
   Date, TheThing
FROM MyData
ORDER BY Date


Date                     TheThing
-----------------------  --------
2016-03-09 08:17:29.867  a
2016-03-09 08:18:33.327  a
2016-03-09 14:32:01.240  NULL
2016-10-21 19:53:49.983  NULL
2016-11-12 03:25:21.753  b
2016-11-24 07:43:24.483  NULL
2016-11-28 16:06:23.090  b
2016-11-28 16:09:07.200  c
2016-12-10 11:21:55.807  c
Run Code Online (Sandbox Code Playgroud)

我想要一个计算非空值的排名列:

Date                     TheThing  DesiredTotal
-----------------------  --------  ------------
2016-03-09 08:17:29.867  a         1
2016-03-09 08:18:33.327  a         2
2016-03-09 14:32:01.240  NULL      2 <---notice it's still 2 (good)
2016-10-21 19:53:49.983  NULL      2 <---notice it's still 2 (good)
2016-11-12 03:25:21.753  b         3
2016-11-24 …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server

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

如何在 xmm 寄存器中旋转压缩四字?

给定一个xmm包含两个四字(即两个 64 位整数)的 128 位寄存器:

     ???????????????????????????????????????
xmm0 ? ffeeddccbbaa9988 ? 7766554433221100 ?
     ???????????????????????????????????????
Run Code Online (Sandbox Code Playgroud)

如何对单个四字执行旋转?例如:

prorqw xmm0, 32   // rotate right packed quadwords

     ???????????????????????????????????????
xmm0 ? bbaa9988ffeeddcc ? 3322110077665544 ?
     ???????????????????????????????????????
Run Code Online (Sandbox Code Playgroud)

我知道 SSE2 提供:

  • PSHUFW:随机打包字(16 位)
  • PSHUFD: shuffle 打包双字(32 位)

虽然我不知道指令是做什么的,也没有四字(64 位)版本。

奖金问题

你将如何执行ROR的的xmm寄存器-假设打包数据等大小?

  • 按 16 位旋转右压缩双字:

         ?????????????????????????????????????????????
    xmm0 ? ffeeddcc ? bbaa9988 ? 77665544 ? 33221100 ?
         ?????????????????????????????????????????????
                            ? …
    Run Code Online (Sandbox Code Playgroud)

x86 sse2

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

如何向应用程序角色授予 db_owner 权限?

如何将db_owner固定数据库角色的所有权限和特权授予应用程序角色?

精简版

命令:

GRANT CONTROL ON [DatabaseName] TO [ApplicationRoleName];
Run Code Online (Sandbox Code Playgroud)

将是我想要的,但它失败了:

消息 15151,级别 16,状态 1,第 23 行
找不到对象“DatabaseName”,因为它不存在或您没有权限。

研究工作

我正在研究使用 SQL Server Application Roles。

  • 它就像一个用户(因为它有一个用户名和密码)
  • 这就像一个角色

连接到服务器后,您的应用程序将运行一个存储过程以作为应用程序“登录”自己:

EXECUTE sp_SetAppRole @rolename = 'Contoso.exe', @password =
'Tm8gaSBkaWRuJ3QganVzdCBiYXNlNjQgZW5jb2RlIGEgcGFzc3dvcmQuIEl0J3Mgb25seSBhbiBleGFtcGxlIQ==';
Run Code Online (Sandbox Code Playgroud)

db_owner 的权限

通常,应用程序以作为db_owner固定角色成员的用户身份登录。该角色具有以下权限:db_owner

  • 对一切
  • 每张桌子上
  • 每一个观点
  • 每个存储过程、函数
  • 对于所有现有对象
  • 以及未来将存在的所有对象

而同时:

  • 您可以将用户置于数据库角色中
  • 您可以将用户置于应用程序角色中

您不能将应用程序角色置于数据库角色中

那么,问题来了:如何授予我的应用程序角色所有权限(即执行所有操作)?

角色权限

因此,现在是向角色授予权限的时候了。按照此页面的建议:

GRANT SELECT, INSERT, UPDATE, DELETE ON Users TO [Contoso.exe]; …
Run Code Online (Sandbox Code Playgroud)

sql-server security permissions sql-server-2005 application-role

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

我可以使用 vue test utils 通过 ref 选择一个元素吗

如果我有图片

<img class="pineapple" ref="pineapple" src="pineapple.jpg" />

我可以使用 $ref

expect(wrapper.find($refs.pineapple).exists()).toBe(true)

代替

expect(wrapper.find('.pineapple').exists()).toBe(true)

jestjs vuejs2 vue-test-utils

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

VirtualStringTree - 如何从绝对索引获取节点?

假设我在虚拟模式下使用VirtualStringTree。

我想指出树有一些节点:

VirtualStringTree1.RootNodeCount := 999983;
Run Code Online (Sandbox Code Playgroud)

由于该树处于虚拟模式:

  • 所有数据管理都发生在应用程序中
  • 并按需

现在稍后我想将一个节点标记为“选定”

我的底层TList中发生了一些事情(例如在索引处797,977),这将导致节点之一(如果它可见)需要更改其Selected状态。

由于虚拟树中的所有内容都基于Node.Index,因此理想情况下应该有一种方法来指示选择了索引:

VirtualStringTree1.RootNodeCount := 999983;
VirtualStringTree1.Selected[797977] := True; //indicate that node at index 797977 is now selected
Run Code Online (Sandbox Code Playgroud)

但是树没有重载来按索引设置选择。

改变节点选定状态的唯一方法是:

  • 有一个PVirtualNode
  • 将其传递给VirtualStringTree1.Selected[node] := True;

当我没有节点时,如何将节点标记为选中?

Windows 列表视图解决方案

虚拟模式下的Windows ListView控件可以非常简单地解决这个问题。

  • 一切都同等地基于Node.Index
  • 并且控件使用回调来按需向应用程序询问显示信息

所以你会得到一个LVN_GETDISPINFO回调。那就是当您填充回调结构,并根据需要向树提供它所要求的信息时:

  • 文本
  • 状态(例如选定)
  • 图像索引
  • 缩进

但为了简单起见,您可以将其视为:

procedure TForm1.VirtualStringTree1GetSelected(Sender: TBaseVirtualTree; Node: PVirtualNode; var Result: Boolean);
begin …
Run Code Online (Sandbox Code Playgroud)

delphi virtualtreeview

5
推荐指数
0
解决办法
1471
查看次数

如何在 HTML 中指定 Unicode 字符的表情符号版本?

Unicode 实体:

\n
\n

U+2714 重勾号

\n
\n

有不同的编码:

\n
    \n
  • UCS4:0x00002714
  • \n
  • UTF-16:0x2714
  • \n
  • UTF-8:0xE2 0x9C 0x94
  • \n
  • HTML 实体:&#x2714;
  • \n
\n

这一切都很好。如果您有一个包含该编码字符的 Unicode 文件:

\n
Offset    00 01 02 03\n00000000: FF FE 14 27\n
Run Code Online (Sandbox Code Playgroud)\n

HEAVY CHECK MARK如果您在浏览器中打开它,它会呈现为:

\n

\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2 \xa0\xc2\xa0在此输入图像描述

\n

但这并不是唯一的 U+2714

\n

还有另一个 U+2714。U+2714有两种款式:

\n
    \n
  • 文本样式:\xe2\x9c\x94 ( U+2714+ U+FE0E)
  • \n
  • 表情符号样式:\xe2\x9c\x94\xef\xb8\x8f ( U+2714+ U+FE0F)
  • \n
\n

如果将第二种样式(表情符号样式)放入文本文件中:

\n …

html emoji

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

如何在Microsoft SQL Server中存储n维向量?

我想在 SQL Server 中存储一个大n维向量(例如嵌入向量)作为与另一行关联的元数据。

\n

在本例中,它将是一个 384 维向量,例如:

\n
[0.161391481757164,   -0.23294533789157867, -0.5648667216300964,  -0.3210797905921936,  -0.03274689242243767,  0.011770576238632202, -0.06612513959407806,\n-0.14662186801433563, -0.17081189155578613,  0.2879514992237091,  -0.1932784765958786,   0.009713868610560894, 0.23330552875995636,   0.03551964834332466,\n-0.20526213943958282,  0.06445703655481339, -0.3146169185638428,   0.5788811445236206,   0.09118294715881348, -0.0048667509108781815,-0.16503077745437622,\n 0.25162017345428467, -0.36395764350891113, -0.34742429852485657,  0.0526515394449234,   0.08912508934736252,  0.48464590311050415,  -0.04224267974495888,\n 0.32445403933525085, -0.6847451329231262,  -0.20959551632404327, -0.027657458558678627, 0.20439794659614563,  0.6859520077705383,   -0.4988805055618286,\n-0.26204171776771545, -0.18842612206935883,  0.07067661732435226,  0.02633148804306984,  0.03182782977819443,  0.28935596346855164,  -0.0016041728667914867,\n 0.14609676599502563, -0.36272501945495605,  0.10288259387016296, -0.3651926815509796,  -0.3823530375957489,   0.14052163064479828,   0.006418740376830101,\n 0.11741586774587631, -0.6509529948234558,  -0.15997739136219025, -0.42837604880332947,  0.12351743131875992,  0.0485026054084301,    0.24820692837238312,\n 0.46972623467445374, -0.47954055666923523, -0.5238635540008545,  -0.3543052673339844,   0.22626525163650513,  0.18406584858894348,   0.6463921070098877,\n 0.11894208937883377, -0.07143554836511612,  0.004256516695022583, 0.10088140517473221,  0.3335645794868469,   0.16905969381332397,   0.056856121867895126,\n …
Run Code Online (Sandbox Code Playgroud)

sql-server arrays vector word-embedding

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

如何在 .NET ListView 中设置标题排序字形?

如何在 .NET 2.0 WinForms ListView 中设置具有标题排序标志符号的列及其方向?

撞

.net 的 listview 不是托管控件,它是 Win32 ListView 公共控件的一个非常薄的包装。它甚至不是一个非常好的包装器 - 它没有公开真正列表视图的所有功能。

Win32 listview通用控件支持使用主题绘制自身。主题元素之一是标题排序箭头。Windows 资源管理器的列表视图公共控件知道如何使用该主题元素绘制其列之一。

  • Win32列表视图是否支持指定哪一列具有什么排序顺序?
  • 列表视图内部使用的Win32标头控制是否支持指定哪一列具有什么排序顺序?
  • win32标头控件是否支持自定义绘图,因此我可以自己绘制标头排序字形?
  • win32 listview控件是否支持自定义标题绘制,因此我可以自己绘制标题排序字形?
  • .NET ListView 控件是否支持自定义标题绘制,因此我可以自己绘制标题排序字形?

sorting listview themes header glyph

4
推荐指数
1
解决办法
3359
查看次数

如何在 .NET 2.0 ListView 中全选/全选?

在不使用的情况下在列表视图中选择全部或不选择项目的好方法是什么:

foreach (ListViewItem item in listView1.Items)
{
 item.Selected = true;
}
Run Code Online (Sandbox Code Playgroud)

或者

foreach (ListViewItem item in listView1.Items)
{
 item.Selected = false;
}
Run Code Online (Sandbox Code Playgroud)

我知道底层的 Win32 列表视图公共控件支持LVM_SETITEMSTATE 消息,您可以使用它来设置选定状态,并通过传递 -1 作为索引,它将应用于所有项目。我宁愿不向恰好位于 .NET Listview 控件后面的控件 PInvoking 消息(我不想成为一个糟糕的开发人员并依赖未记录的行为 - 当他们将其更改为完全托管的 ListView 类时)

撞

Pseudo Masochist有SelectNone案例:

ListView1.SelectedItems.Clear(); 
Run Code Online (Sandbox Code Playgroud)

现在只需要SelectAll代码

listview selectall

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

ASP.NET:如何将<A>或HtmlAnchor转换为静态文本?

我有一个转发器,将输出一系列项目:

<asp:repeater ... runat="Server">
   <itemtemplate>
      <a href="<%# GetItemLink(...) %>"><%# GetItemText %></a>
   <itemtemplate>
<asp:repeater>
Run Code Online (Sandbox Code Playgroud)

但是有些项目没有相关的链接,所以我不希望它们是可点击的.我尝试制作它runat=server HtmlAnchor,并设置htmlAnchor.Disabled = true为物品不应该实际上有一个链接 - 但它们仍然可以被点击(它只是使文本灰色)

我知道在过去的日子里我是怎么做到的:

<% If IsLink Then %>
   <A href="<% =GetItemLink%">
<% End If %>
   <% =GetItemText %>
<% If IsLink Then %>
   </A>
<% End If %>
Run Code Online (Sandbox Code Playgroud)

但那是凌乱的混合代码和HTML ASP方式.什么是ASP.NET方式?

html asp.net

4
推荐指数
1
解决办法
1059
查看次数