当前位置: 首页 > 面试题库 >

转换整数数组以在SQL的``泪N''子句中使用

邓高韵
2023-03-14
问题内容

当然,有一种框架方法可以给定整数,字符串等数组,将它们转换为可在SQL“ IN”子句中使用的列表?

例如

int[] values = {1,2,3};

会去

"(1,2,3)"

问题答案:

var inClause = “(“
+ String.Join(“,”, values.Select(x => x.ToString()).ToArray())
+ “)”;

注意 :您不再需要.ToArray()在.NET Framework 4中调用。String.Join<T>(string separator, IEnumerable<string> values)添加了一个新方法。



 类似资料:
  • 问题内容: 我遇到的情况是,我需要对只能通过其ID识别的非常大的行集进行更新(因为目标记录是由用户选择的,除了它是用户的记录集之外,没有其他共同点想要修改)。正在所有这些记录上更新相同的属性,因此我想进行一个UPDATE调用。 这是一种不好的做法,还是比在UPDATE语句中使用“ WHERE IN(1,2,3,4,..... 10000)”更好的方法来进行此更新? 为每条记录使用单独的更新语句并将

  • 问题内容: 我想运行类似的东西: 有办法吗?或者至少有比动态构建每个关键字查询更好的方法: 谢谢。 问题答案: 我不确定它是否比您想出的要好,但是您可以使用MySQL的regex功能: 另外,正如其他人所提到的,您可以使用MySQL的全文本搜索功能(但仅当您使用MyISAM引擎时)。

  • 我有以下方法: 作为参数,我输入一个句子。如果句子长于5个单词,我只希望打印出前5个单词。发生的情况是 [word1、word2、word3、word4、word5] 我希望它看起来像是: word1 word2 word3 word4 word5 关于如何将数组转换为后一个示例中的正常句子格式,有什么建议吗?

  • 问题内容: 如果我有这样的查询: 并且我在该字段上有一个索引,SQL Server仍然使用该索引吗? 问题答案: 是啊,没错。如果您的表有10,000条记录,而(1,2,3)中只有5条记录,那么它很可能会使用索引来获取记录。但是,如果发现9,000条记录具有in(1,2,3),则它很可能只是执行表扫描以获取对应的s,因为仅遍历整个表比遍历每个表更快索引树的分支,并分别查看记录。 SQL Serve

  • 问题内容: 在SQL I中,(不幸的)我经常不得不使用“ ”条件,因为数据库违反了几乎所有的规范化规则。我现在无法更改。但这与问题无关。 此外,我经常使用条件来提高SQL语句的可读性和灵活性。 有没有可能在不编写复杂的子选择的情况下将这两件事结合起来的方法? 我想要一些简单而不是这样的东西: 我在这里使用SQl Server和Oracle,但是我很感兴趣是否可以在任何RDBMS中实现。 问题答案:

  • 问题内容: 我在某处看到此查询- 什么是 “N” 是什么意思?我不确定这是否仅对SQL Server有效。 问题答案: N代表“国家字符”,它表示字符串的内容为Unicode。 只要碰到专有名称或其他可能包含默认ASCII字符集以外的字符的实体,就应该使用Unicode(/ )。如果不使用前缀将此类字符串括起来,则会丢失数据。例如: 结果: 您还应确保在您或其他子句中对列使用前缀。不使用前缀时,由