SQLite中怎么将两个字段字符串合并连接为一个
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQLite中怎么将两个字段字符串合并连接为一个相关的知识,希望对你有一定的参考价值。
先加头文件#include<string.h>char a[10]="123";
char b[10]="abc";
strcat(a,b); //连接两个字符串,连接后的字符串存放在a中,数组a中有足够空间
printf("%s",a); //输出连接后的字符串
或:
#include<string.h>
char a[10]="123";
char b[10]="abc";
char c[20];
strcpy(c,a); //把串a复制到有足够空间的c中
strcat(c,b); //把b连接到c的串尾 参考技术A select A+1 结果为1
select A+1 结果为1
select 2+1 结果为3
感觉在+运算中,SQLite将字符串非数字串都当作0处理了
加号就是针对数字的,所以应该用|| 来拼接字符串的结果
在 SQLite 中连接来自不同表的两个字段
【中文标题】在 SQLite 中连接来自不同表的两个字段【英文标题】:Concatenate two fields from different tables in SQLite 【发布时间】:2021-10-13 04:19:45 【问题描述】:如何在 SQLite 中连接来自两个不同表的两个字段?
说我有:
Id Name
---------- ------
1 John
2 Doe
Id Name
---------- ------
1 SchoolA
2 SchoolB
预期输出
Id Name
---------- ------
1 John-SchoolA
2 Doe-SchoolB
注意:两个表的 ID 相同。
更新:
表 1
Id Name
---- -------
1 John
2 Doe
表 2
Table1_id Name
--------- ------
1 SchoolA
2 SchoolB
注意:两个表的 ID 相同(就值而言)。
【问题讨论】:
我不太明白你想做什么,但尝试使用INNER JOIN
。
两张表的ID相同吗?
那它们有什么关系呢?我猜 StudentId 与 SchoolId 无关。为什么要将 John 与 SchoolA 连接起来?
是的,它们确实相关。让我更新帖子。
【参考方案1】:
您必须根据 id 连接表并连接匹配行的名称:
SELECT t1.Id,
t1.Name || '-' || t2.Name AS Name
FROM table1 t1 INNER JOIN table2 t2
ON t2.Id = t1.Id
请参阅demo。
【讨论】:
谢谢,@forpas。 t1.Id 是否适用于 SQLite 3?我收到一个错误,没有这样的列:t1.Name @Bloggrammer 检查我的回答中的演示。您是否照原样复制代码? 我让它工作了,谢谢。尽管它们在值方面具有相同的 Id,但属性名称却不同。我用正确的属性名称更新了您的最后一行查询。 @Bloggrammer 在您的问题中,两个表中的列具有相同的名称Name
。
是的。但是id不一样。表 1 是 Id
而表 2 id 是 Table1_id
以上是关于SQLite中怎么将两个字段字符串合并连接为一个的主要内容,如果未能解决你的问题,请参考以下文章