首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【Kotlin 协程】Flow 异步流 ① ( 以异步返回返回多个返回值 | 同步调用返回多个值的弊端 | 尝试在 sequence 中调用挂起函数返回多个返回值 | 协程中调用挂起函数返回集合 )

文章目录 一、以异步返回返回多个返回值 二、同步调用返回多个值的弊端 三、尝试在 sequence 中调用挂起函数返回多个返回值 四、协程中调用挂起函数返回集合 一、以异步返回返回多个返回值 ----...在 Kotlin 协程 Coroutine 中 , 使用 suspend 挂起函数 以异步的方式 返回单个返回值肯定可以实现 , 参考 【Kotlin 协程】协程的挂起和恢复 ① ( 协程的挂起和恢复概念...| 协程的 suspend 挂起函数 ) 博客 ; 如果要 以异步的方式 返回多个元素的返回值 , 可以使用如下方案 : 集合 序列 Suspend 挂起函数 Flow 异步流 二、同步调用返回多个值的弊端...sequence 中调用挂起函数返回多个返回值 ---- 尝试使用 挂起函数 kotlinx.coroutines.delay 进行休眠 , 这样在挂起时 , 不影响主线程的其它操作 , 此时会报如下错误...---- 如果要 以异步方式 返回多个返回值 , 可以在协程中调用挂起函数返回集合 , 但是该方案只能一次性返回多个返回值 , 不能持续不断的 先后 返回 多个 返回值 ; 代码示例 : package

8.3K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Excel公式技巧14: 在主工作表中汇总多个工作表中满足条件的值

    我们可能熟悉使用INDEX、SMALL等在给定单列或单行数组的情况下,返回满足一个或多个条件的值的列表。这是一项标准的公式技术。...在《Excel公式练习32:将包含空单元格的多行多列单元格区域转换成单独的列并去掉空单元格》中,我们讲述了一种方法,给定由多个列组成的单元格区域,从该区域返回由所有非空单元格组成的单个列。...D2:D10"),"Y")) 然后,将这组代表工作表名称的文本字符串的两端连接,在后面是所使用的工作表区域(D2:D10),在前面用单个撇号连接。...:当要求Sheet2返回值时,以及要求Sheet3返回值时,该参数将被“重置”为1。...k的值,即在工作表Sheet1中匹配第1、第2和第3小的行,在工作表Sheet2中匹配第1和第2小的行,在工作表Sheet3中匹配第1小的行。

    9.1K21

    Excel公式技巧17: 使用VLOOKUP函数在多个工作表中查找相匹配的值(2)

    我们给出了基于在多个工作表给定列中匹配单个条件来返回值的解决方案。本文使用与之相同的示例,但是将匹配多个条件,并提供两个解决方案:一个是使用辅助列,另一个不使用辅助列。 下面是3个示例工作表: ?...图3:工作表Sheet3 示例要求从这3个工作表中从左至右查找,返回Colour列中为“Red”且“Year”列为“2012”对应的Amount列中的值,如下图4所示的第7行和第11行。 ?...图4:主工作表Master 解决方案1:使用辅助列 可以适当修改上篇文章中给出的公式,使其可以处理这里的情形。首先在每个工作表数据区域的左侧插入一个辅助列,该列中的数据为连接要查找的两个列中数据。...16:使用VLOOKUP函数在多个工作表中查找相匹配的值(1)》。...注意,在定义名称时,将活动单元格放置在工作表Master的第11行。 名称:Arry1 引用位置:=MATCH(TRUE,COUNTIFS(INDIRECT("'"&Sheets&"'!

    14.1K10

    Excel公式技巧16: 使用VLOOKUP函数在多个工作表中查找相匹配的值(1)

    在某个工作表单元格区域中查找值时,我们通常都会使用VLOOKUP函数。但是,如果在多个工作表中查找值并返回第一个相匹配的值时,可以使用VLOOKUP函数吗?本文将讲解这个技术。...最简单的解决方案是在每个相关的工作表中使用辅助列,即首先将相关的单元格值连接并放置在辅助列中。然而,有时候我们可能不能在工作表中使用辅助列,特别是要求在被查找的表左侧插入列时。...因此,本文会提供一种不使用辅助列的解决方案。 下面是3个示例工作表: ? 图1:工作表Sheet1 ? 图2:工作表Sheet2 ?...图3:工作表Sheet3 示例要求从这3个工作表中从左至右查找,返回Colour列中为“Red”对应的Amount列中的值,如下图4所示。 ?...B1:D10"),3,0) 其中,Sheets是定义的名称: 名称:Sheets 引用位置:={"Sheet1","Sheet2","Sheet3"} 在公式中使用的VLOOKUP函数与平常并没有什么不同

    25.5K21

    在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误

    在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。...请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。...异常详细信息: System.Data.SqlClient.SqlException: 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。...(provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接) 源错误: 执行当前 Web 请求期间生成了未处理的异常。...提示以下错误:  “在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。”

    5.4K10

    SQLServer T-SQL 部分查询语句归纳

    where id=Object_Id('表名')) 数据库多表查询 Join连接 SQL JOIN 用于把来自两个或多个表的行结合起来。...SQL左链接 LEFT JOIN关键字返回左表(表1)中的所有行,即使在右表(表2)中没有匹配。如果在正确的表中没有匹配,结果是NULL。 ?...RIGHT JOIN 右连接 SQL右链接 RIGHT JOIN 关键字返回右表(table2)的所有行,即使在左表(table1)上没有匹配。如果左表没有匹配,则结果为NULL。 ?...FULL OUTER JOIN 完整外部连接 当左(表1)或右(表2)表记录匹配时,FULL OUTER JOIN关键字将返回所有记录。 ?...聚合函数SUM表示你需要怎样处理转换后的列的值,是总和(sum),还是平均(avg)还是min,max等等。

    1.4K20

    《SQL Cookbook》 - 第三章 多表查询

    TRUE,但是FALSE or NULL返回NULL,所以当使用IN和OR时,要注意是否会涉及到NULL值。...从一个表检索和另一个表不相关的行 基于共同列将两个表连接起来,返回一个表的所有行,不论这些行在另一个表中是否存在匹配行,然后,只存储这些不匹配的行即可。...标量子查询,不需要改主查询中正确的连接操作,他是为现有查询增加新数据的最佳方案。但是当使用标量子查询时,必须保证返回的是标量值(单值),不能返回多行。 7. ...(2) 在进行连接查询之前先执行聚合运算(以内嵌视图),避免错误的结果,因为聚合运算产生在连接查询之前。...多个表中返回缺少的值 使用全外连接,基于一个共同值从两个表中返回缺少的值,全外连接查询就是合并两个表的外连接查询的结果集。

    2.4K50

    笛卡尔积

    二、正确的多表查询方法为了避免笛卡尔积的错误,我们需要使用JOIN语句来连接多个表,并指定连接条件。...在使用JOIN语句时,我们需要根据具体的业务需求和数据结构选择合适的连接方式。...这样,我们就可以获取每个订单所属的顾客名称和订单名称的信息。与笛卡尔积不同的是,使用INNER JOIN连接表时,只返回符合连接条件的行,避免了冗余数据的产生。...例如,LEFT JOIN返回左表的所有行和符合连接条件的右表行;RIGHT JOIN则返回右表的所有行和符合连接条件的左表行;FULL OUTER JOIN返回左右表的所有行,如果没有符合条件的行,则使用...注意,在LEFT JOIN中,即使没有符合条件的右表行,也会返回左表的所有行。因此,在计算总成绩时,我们需要使用SUM函数将NULL值转换为0,否则会影响计算结果。

    50240

    探讨MySQL中 “约束“ 下的查询

    数据库约束: 1.约束类型汇总: 约束类型 说明 NULL约束 使用NOT NULL指定列不为 空 UNIQUE唯一约束 指定列为唯一的、不重复的 DEFAULT默认值约 束 指定列为空时的默认值 主键约束...一对一:比如用户和账号信息,可以建立在一个表中  二.  一对多:一个班级有多个学生设计如下: 三.  ...聚合查询: 1.常见的统计总数、计算平局值等操作,可以使用聚合函数来实现,常见的聚合函数有: 函数 说明 COUNT([DISTINCT] expr) 返回查询到的数据的 数量 SUM([DISTINCT...最大值,不是数字没有意义 MIN([DISTINCT] expr) 返回查询到的数据的 最小值,不是数字没有意义 例子: 1.1COUNT:统计行数 统计班里有多少同学: 1.2 SUM: 统计语文成绩总分...IN关键字  例子:在成绩表中查询彩儿和清涟同学的成绩的成绩信息 6.合并查询: 在实际应用中,为了合并多个select的执行结果,可以使用集合操作符 union,union all

    10710

    SQLSERVER存储过程语法详解

    在 Create PROCEDURE 语句中可以声明一个或多个参数。用户必须在执行过程时提供每个所声明参数的值(除非定义了该参数的默认值)。 OUTPUT 表明参数是返回参数。...声明多个变量: DECLARE @s varchar(10),@a INT —————————————————————————————- oracle的建表sql转成sqlserver的建表sql时的注意点...@符号 DECLARE @I INT 变量的赋值: 变量赋值时变量前必须加set SET @I = 30 声明多个变量: DECLARE @s varchar(10),@a INT if语句:...Select * from #temp 1、局部临时表(#开头)只对当前连接有效,当前连接断开时自动删除。...2、全局临时表(##开头)对其它连接也有效,在当前连接和其他访问过它的连接都断开时自动删除。

    1.7K20

    【MySQL篇】聚合查询,联合查询

    常见的统计总数、计算平局值等操作,可以使用聚合函数来实现,常见的聚合函数有: 函数 说明 COUNT([DISTINCT] expr) 返回查询到的数据的 数量 SUM([DISTINCT] expr)...,不是数字没有意义 MIN([DISTINCT] expr) 返回查询到的数据的 最小值,不是数字没有意义 案例: COUNT 作用:返回某列的非 NULL 值的数量,或返回满足条件的行数。...值  并且不会包含它 如果对整个表进行count 则不会关注null SUM() 作用:返回某列数值型数据的总和。...join 表名2 on 连接条件; 内连接: 左外连接: 右外连接: 俩张表存在一一对应的情况 ,所有内连接和外连接找到的结果都是一致的; 当修改其中某个值,让它们不保存一一对应的情况...语句,也叫嵌套查询, 简单来说就是把多个sql语句写成一个sql; 单行子查询:返回一行记录的子查询 查询与“不想毕业” 同学的同班同学: 思路:在student表中找到"不想毕业” 同学的classes_id

    9710

    【数据库】MySQL:从基础到高级的SQL技巧

    优化查询: 使用 WHERE 和合适的索引可以提升分页查询的性能,尤其是在处理大量数据时。 五、连接查询 MySQL的连接查询用于从多个表中查询相关数据。...(一)内连接 内连接返回两个表中匹配的记录,只有在两个表中都有对应的匹配数据时才会返回结果。 语法: SELECT column1, column2, ......只有当员工和部门表的 department_id 匹配时,才会返回结果 (二)左连接 左连接返回左表的所有记录,即使右表没有匹配的记录。对于没有匹配的右表记录,结果中对应的列会显示为 NULL。...这里员工表通过自连接实现了员工与经理的对应关系。 (七)多表连接 MySQL 支持在一个查询中连接多个表,通过多个 JOIN 子句可以实现多表连接。...确保 ON 条件中的列有适当的匹配,以避免查询返回错误的数据集或产生过多的空值(NULL)。 在编写复杂连接查询时,应尽量简化表之间的关系,避免产生不必要的笛卡尔积。

    13910

    Mysql 常用命令记录与数据导入导出

    文中命令/方法只是本人使用过的一些,不覆盖所有,例如:数据库导入导出还有其他多种方式,有兴趣可以自行研究。 PSS:我发现我终于记住了,在写下面表格时基本没有去查了。。...from 表 where 条件 列名可以为多个,但同时作用于多个,使用需谨慎 模糊查找 like select 列名 from 表 where 列 like ‘%嘻嘻%’; 谨慎使用,有性能问题 模糊查找...其实想想,如果该语句不报错,那么同一个name对应的两个score应该返回哪一个值呢?...结果为: name | sum(score)| —|— zhangsan | 830 lisi | 920 order by order by 语句一般在其他的基础语句后连接使用,功能为对返回结果进行排序...,使用规则如下: select * from record order by 列名1,列名2 [ASC][DESC] mysql 可以对多个列排序,当有多个列时,仅当第一个列相同时使用第二个列进行排序。

    3.1K40

    SQLServer 存储过程

    存储过程的参数 1. 输入参数 用于向存储过程传入值,类似C语言的按值传递,如图a,b; 2. 输出参数 用于在调用存储过程后,返回结果,类似C语言的按引用传递,如图中s ?...--正确的方法: EXEC proc_stu @labPass=55 创建带输出参数的存储过程 如果希望调用存储过程后,返回一个或多个值,这时就需要使用输出(output)参数了 例子:修改上例,...处理存储过程中的错误 1,可以使用print语句显示错误信息,但这些信息是临时的,只能显示给用户 2,可以使用raiserror显示用户定义的错误信息时 a) 可以指定严重级别 b)...]) 说明: msg_id:在sysmessages系统表中指定用户定义的错误信息 msg_str:用户定义的特定信息,最长255个字符 severity:定义严重性级别,用户可以使用的级别为0-18...级 state:表示错误状态,1-127之间的值 option:指示是否将错误记录到服务器错误日志中 例子:完善上述例子,当用户调用存储过程时,传入的及格参数不在0-100之间时,将弹出错误警告,终止存储过程的执行

    2.4K20

    SQL为王:oracle标量子查询和表连接改写

    Oracle允许在select子句中包含单行子查询,这个也就是oracle的标量子查询,标量子查询有点类似于外连接,当使用到外连接时我们可以灵活的将其转化为标量子查询。...=b.username,如果符合则返回子查询的值,如果不符合则用null补充。...而如果标量子查询中如果主查询的一行对应子查询返回有多个值,这个是不允许的,看下面的例子 SQL> select a.username,b.object_id from t1 a,t2 b where a.username...,所以这里返回的b.object_id可能有多个值,这里就出现上述的ora-01427错误。...关于标量子查询和表关联的性能简介: 如果主查询返回的数据较多,而子查询中又没有高效的索引,关联列对应的主查询表又没有较多的重复值,那么这个标量子查询的执行成本是很大的,如上面的标量子查询和外连接的sql

    3.3K60

    PostgreSQL中的查询简介

    创建示例数据库 在我们开始在SQL中进行查询之前,我们将首先创建一个数据库和几个表,然后使用一些示例数据填充这些表。这将使您在以后开始查询时获得一些实践经验。...如果您尝试在非数字数据上使用它们,它将导致一个错误或0,取决于您正在使用的RDBMS: SELECT SUM(entree) FROM dinners; ERROR: function sum(character...但是,在许多情况下,有必要查询多个表的内容。我们将在下一节中介绍几种可以执行此操作的方法。 查询多个表 通常,数据库包含多个表,每个表包含不同的数据集。SQL提供了一些在多个表上运行单个查询的方法。...一个LEFT JOIN条款从“左”表,只有右表的匹配记录返回的所有记录。在外连接的上下文中,左表是FROM子句引用的表,右表是JOIN语句后引用的任何其他表。...请注意,当使用UNION从多个表查询多个列时,每个SELECT语句必须查询相同数量的列,相应的列必须具有相似的数据类型,并且每个SELECT语句中的列必须具有相同的顺序。

    12.4K52
    领券