`
静夜独窗
  • 浏览: 57478 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

sql函数与string拼接查询id集合哪个效率高

阅读更多

第一种:利用sql函数查询id集合

String sql = "select GROUP_CONCAT(DISTINCT product_id) productId from product_supplier where supplier_id="+supplierId;
   try {
    ps = db.getConn().prepareStatement(sql);
    rs = ps.executeQuery();
    if(rs.next()) {
     con.append(" and p.id in ("+rs.getString(1)+")");
    }
   } catch (SQLException e) {
    e.printStackTrace();
   }

 

第二种:利用string拼接的方式把id结合拼起来

String sql = "select product_id from product_supplier where supplier_id="+supplierId;

StringBuffer sb = new StringBuffer();
   try {
    ps = db.getConn().prepareStatement(sql);
    rs = ps.executeQuery();
    while (rs.next()) {
     sb.append(rs.getInt(1)+",");
    }
    String s ="";
    if(sb.toString().length()>=1){
     s = sb.toString().substring(0,sb.length()-1);
    }
    con.append(" and p.id in ("+s+")");

 

第一种与第二种哪个的效率高呢

0
1
分享到:
评论
2 楼 静夜独窗 2014-08-12  
,也对,机器没有明显的差别
1 楼 lucky16 2014-08-11  
测试下,记录下时间不就OK了。

相关推荐

    Sqlserver 2014 之 自定义字符串聚合函数

    `STRING_AGG`函数允许我们以指定的分隔符连接一组字符串,这对于生成报告、汇总信息或构建复杂的查询非常有用。然而,在SQL Server 2014中,我们需要借助用户定义的聚合函数(User-Defined Aggregate, UDA)来达到...

    Sql Server 字符串聚合函数

    要实现这个功能,我们可以创建一个自定义的T-SQL函数,如下所示: ```sql Create FUNCTION AggregateString (@Id int) RETURNS varchar(1024) AS BEGIN declare @Str varchar(1024) set @Str = '' select @Str =...

    SQL SERVER2012中新增函数之字符串函数CONCAT详解

    CONCAT函数的基本语法是 `CONCAT(string1, string2, ..., stringN)`,它可以接受两个或更多个参数,并将它们连接成一个单一的字符串。这些参数可以是任何类型的值,只要这些值能够被隐式转换为字符串。例如,你可以...

    sql_string.rar_sqlstring.h_visual c

    例如,可能有一个`formatSQL`函数用于动态构建SQL查询,或者`escapeString`函数用于确保输入数据安全。 2. **SQL语句构建器**:为了提高代码可读性和安全性,`sql_string.h`可能包含一个类,如`SQLQueryBuilder`,...

    SQL Server 将某一列的值拼接成字符串.docx

    除了这两种方法,还可以使用STUFF和FOR XML PATH配合来去除最后的逗号,或者使用STRING_AGG函数(SQL Server 2017及以上版本)来更直接地实现拼接。例如: ```sql SELECT STUFF((SELECT ',' + AuxTypeName FROM ...

    C# 拼接字符串的几种方式和性能

    String.Format()是另一种常用的拼接方式,相比简单“+=”拼接法,String.Format()的性能要高很多。String.Format()会先创建一个StringBuilder对象,然后将参数添加到StringBuilder中,最后将StringBuilder转换为...

    sybase sql语法和函数使用教程

    本文档旨在为Sybase SQL用户提供一个全面的教程,涵盖了基本的Transact-SQL语法以及常用的SQL函数。通过这些内容的学习,用户可以更好地理解和掌握Sybase SQL的核心概念和技术要点,从而高效地管理和操作数据库。...

    pgsql拼接pgsql拼接pgsql拼接

    在数据库查询中,拼接操作非常常见,特别是在构建复杂的SQL语句或者格式化输出数据时。 在PostgreSQL中,有几种方法可以实现字符串拼接: 1. **使用`||`操作符**:这是PostgreSQL中最直观的字符串拼接方式。例如,...

    Oracle内置SQL函数-分类整理大全

    这些函数在SQL查询和PL/SQL程序中都可使用,帮助我们高效地处理和操作字符数据。了解并熟练运用这些函数,能够极大地提升数据库操作的灵活性和便利性。在实际工作中,根据需求选择合适的函数,可以简化代码,提高...

    sqlserver的存储过程与 where in 多值参数

    在SQL Server中,存储过程是预编译的SQL语句集合,它们封装了特定的数据库操作,提高了代码的重用性和执行效率。当涉及到处理多个值时,我们常常会遇到如何将这些值作为参数传递给存储过程的问题。本文将探讨在SQL ...

    StringBuffer 拼接查询条件

    本篇文章将详细探讨如何使用`StringBuffer`类来实现动态SQL查询条件的拼接,尤其关注其与easyUI框架的结合应用。 #### 功能描述 本文档中的代码片段展示了一种方法,通过`StringBuffer`类来拼接动态SQL查询条件,...

    Hive SQL 常见函数

    ### Hive SQL 常见函数详解 #### 一、Case When 条件转换函数 **功能简介:** `CASE WHEN` 是 SQL 中一种常用的条件判断语句,可以在查询时实现根据不同的条件返回不同的结果,类似于编程语言中的 `if-else` 语句。...

    mysql拼接字符串函数.docx

    MySQL 拼接字符串函数 MySQL 中提供了两个主要的拼接字符串函数:CONCAT 函数和 CONCAT_WS 函数。这两个函数可以帮助开发者方便地进行字符串的拼接操作。 CONCAT 函数 CONCAT 函数是 MySQL 中最基本的拼接字符串...

    聚集函数(自定义分隔符拼接字符串)

    聚集函数在SQL查询中用于处理一组值,而不是单个值。它们对一组行进行操作并返回单个结果。例如,`SUM`、`AVG`和`COUNT`是常见的聚集函数。 在Oracle中,`WM_CONCAT`函数可以用来拼接字符串,但是它不是标准的...

    Oracle内置SQL函数-分类整理大全.doc

    ### Oracle内置SQL函数-分类整理大全 #### F.1 字符函数——返回字符值 **1.1.1 CHR** - **语法**: `CHR(x)` - **功能**: 返回在数据库字符集中与`x`拥有等价数值的字符。`CHR`和`ASCII`是一对反函数,即经过`CHR...

    SQLServer逗号分隔的字符串转换成表

    2. 利用 SQL Server 函数进行字符串拆分:可以使用 SQL Server 的字符串函数,例如 CHARINDEX、LEFT、RIGHT、LEN 等函数对字符串进行拆分。 3. 将拆分后的数据写入到临时表中:将拆分后的数据写入到第 1 步中创建的...

    存储过程拼接字符串

    MySQL中的`CONCAT()`函数与SQL Server类似,用于拼接字符串。 ```sql SELECT CONCAT('Hello, ', 'World!'); ``` 2. 使用`CONCAT_WS()`函数 `CONCAT_WS()`(CONCAT With Separator)函数在MySQL中提供了一个分隔符...

    mysql拼接字符串函数.zip

    在MySQL数据库系统中,拼接字符串是常见的操作,特别是在构建动态SQL语句或者组合数据时。MySQL提供了多种方法来实现字符串的连接,这些函数在处理和操作文本数据时显得尤为重要。下面将详细介绍MySQL中用于拼接字符...

    Sql Server参数化查询之where in和like实现详解

    Sql Server参数化查询之where in和like实现详解 在Sql Server中,参数化查询是提高查询性能和防止SQL注入攻击的有效方法之一。其中,where in和like是两个常用的查询条件,然而它们的参数化实现却不是那么简单。...

    SQL Server查询中的特殊字符处理(C#代码)

    为了解决上述问题,我们可以编写一个函数,该函数接收一个字符串作为输入,并返回一个经过特殊字符处理后的字符串,使其可以安全地用于SQL查询中。以下是一个示例实现: ```csharp using System.Text; public ...

Global site tag (gtag.js) - Google Analytics