小编Tom*_*m H的帖子

将IList <int>集合转换为逗号分隔列表

将IList集合转换为逗号分隔id的字符串的任何优雅方式?

"1,234,2,324,324,2"

c# ilist

5
推荐指数
2
解决办法
9308
查看次数

逗号分隔的SQL字符串需要分隔

我有这个字符串,我从.net应用程序A,B,C,D,E,F,

我想编写一个像sql select语句一样的

set @string = 'A,B,C,D,E,F'

select * from tbl_test 
where tbl_test.code in (@string)
Run Code Online (Sandbox Code Playgroud)

这在t-SQL中不起作用,因为它使用的@string是一个字符串,它不会分隔值.有什么方法可以做到这一点吗?

sql t-sql sql-server sql-server-2005

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

如何查询子关系到同一个表并正确排序

拿这个表:

id      name      sub_id
---------------------------
1        A        (null)
2        B        (null)
3        A2       1
4        A3       1
Run Code Online (Sandbox Code Playgroud)

sub_id列是他自己的表与列ID的关系.

 subid --- 0:1  --- id
Run Code Online (Sandbox Code Playgroud)

现在我有一个问题是创建一个正确的SELECT查询,以显示在其父行下直接选择的子行(sub_id不为null).所以这必须是正确的顺序:

1    A    (null)
3    A2   1
4    A3   1
2    B    (null)
Run Code Online (Sandbox Code Playgroud)

一个正常的SELECT命令id.但是,如何或哪个关键字帮助我正确订购?

我认为JOIN是不可能的,因为我希望将所有行分开.因为行将显示在带有EntityDataSource的Gridview(ASP.Net)上,但子行必须直接显示在其父级下.

谢谢.

mysql sql

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

SQL Query在一列中包含多个值

我一直在桌子上敲打着试图弄清楚这个.我有一张表来存储工作信息,以及工作未完成的原因.原因是数字,01,02,03等.您可以将两个原因作为待处理作业.如果选择两个原因,它们将存储在同一列中,并以逗号分隔.这是JOBID表中的一个示例:

Job_Number     User_Assigned     PendingInfo

1              user1             01,02
Run Code Online (Sandbox Code Playgroud)

还有另一个名为Pending的表,用于存储这些值实际表示的内容.01 =信息不足,02 =时间不够,03 =等待审核.例:

Pending_Num    PendingWord

01             Not Enough Info
02             Not Enough Time
Run Code Online (Sandbox Code Playgroud)

我正在尝试做的是查询数据库,以便为我提供所有工作号,用户,pendinginfo和待决理由.我可以突破第一个值,但无法弄清楚如何做第二个.到目前为止我的技能有限:

select Job_number,user_assigned,SUBSTRING(pendinginfo,0,3),pendingword
from jobid,pending
where
    SUBSTRING(pendinginfo,0,3)=pending.pending_num and
    pendinginfo!='00,00' and
    pendinginfo!='NULL'
Run Code Online (Sandbox Code Playgroud)

我想在这个例子中看到的是:

Job_Number  User_Assigned   PendingInfo   PendingWord       PendingInfo  PendingWord

1           User1           01            Not Enough Info   02           Not Enough Time
Run Code Online (Sandbox Code Playgroud)

提前致谢

sql sql-server-2008

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

在每一行上添加count()列

我不确定这是不是一个好问题.

我有一个复杂的查询与很多联合会搜索多个表的某个关键字(用户输入).搜索到的所有表都与表有关book.

使用LIMIT对结果集进行分页,因此总会有最多10个结果被撤消.

我希望结果集中有一个额外的列,显示找到的结果总量. 我不想使用单独的查询来执行此操作.是否可以在结果集中添加count()列来计算找到的每个结果?

输出看起来像这样:

ID    Title    Author    Count(...)  
1     book_1   auth_1      23  
2     book_2   auth_2      23  
4     book_4   auth_..     23  
Run Code Online (Sandbox Code Playgroud)

...

谢谢!

mysql sql

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

SQL Server 2005 - 如何收缩临时数据库

我的 tempdb 大小增长得太多,因为我们在数据库中执行了太多事务。有人可以让我知道如何在不重新启动服务器的情况下缩小这个 tempdb 吗?我尝试过 DBCC SHRINKDATABASE 但没有帮助

提前致谢

sql sql-server

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

确定当前正在进行的安全检查 (SQL Server)

我一直最讨厌 MS SQL Server 中的一件事就是安全性的工作方式。如果你有趣地看待服务器,安全上下文会不断切换,而且通常很难(无论如何对我来说)预测或调试。

在今天处理一个问题时,我想,“我希望我可以在代码中添加一行,以显示 SQL Server 在代码运行时使用的安全上下文。” 存在这样的命令吗?例如,SELECT security_context()

更清楚一点...如果我处于存储过程中并且因此受到 SP 所有者的安全上下文的约束,那么我希望看到这一点。如果我在由 sp_executesql 调用的代码中,并且它导致安全性处于 SQL Server 服务帐户的上下文中,那么我希望看到这一点。

至少这样我也许能够弄清楚为什么 SQL Server 认为我不应该访问某些内容。

谢谢!


例子

-- Set up
CREATE USER Test_User WITHOUT LOGIN
CREATE TABLE Test_Security_Context (my_id INT)
INSERT INTO Test_Security_Context VALUES (1)
DENY SELECT ON Test_Security_Context TO Test_User
GO
CREATE PROCEDURE Test_Security_Context_SP
AS
  SELECT SUSER_SNAME()
  SELECT * FROM Test_Security_Context  -- This will return ok
  EXEC('SELECT SUSER_SNAME(); SELECT * FROM Test_Security_Context')  -- SUSER_SNAME() will match above but select fails …
Run Code Online (Sandbox Code Playgroud)

sql-server security security-context sql-server-2008

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

为查询中的“OR”运算符创建索引

我有一些 MySQL 查询,条件如下

where field1=val1 or field2=val2
Run Code Online (Sandbox Code Playgroud)

有些人喜欢

where fieldx=valx and fieldy=valy and (field1=val1 or field2=val2)
Run Code Online (Sandbox Code Playgroud)

如何通过创建索引来优化这些查询?我的直觉是为第一次查询的 field1 和 field2 创建单独的索引,因为它是一个 OR,所以复合索引可能不会有多大用处。

对于第二个查询,由于上述原因,我打算再次创建 2 个索引:fieldx, fieldy, field1 和 fieldx,fieldy,field2。

这个解决方案正确吗?这是一个非常大的表,所以我不能仅仅通过应用索引和解释查询来进行实验。

mysql sql indexing query-optimization

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

将SQL查询存储在数据库中是一件坏事吗?

我们正在考虑将SQL查询存储在单独的表中.这些查询仅用于报告目的.针对不同报告的不同查询 - 此外,查询将包含占位符,因此我们可以格式化或使用Winforms前端的预准备语句(它是一个简单的2层报告应用程序),例如格式化要报告的日期范围.

我对此有一些复杂的感觉 - 将SQL存储在表中是否可以,客户端将获取并运行?

sql

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

在现有 Hive 表上添加分区

我正在处理一个大蜂巢表(超过 5000 亿条记录)。处理速度太慢,我想让它更快。我认为通过添加分区,该过程可能会更加有效。

有人能告诉我该怎么做吗?请注意,我的表已经存在。

我的桌子:

create table T(
nom string,
prenom string,
...
date string)
Run Code Online (Sandbox Code Playgroud)

按日期字段分区。

谢谢

sql hadoop hive

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