如何在SQLite中进行串联?

645 阅读2分钟

SQLite用于管理数据库的数据,网站或应用程序的数据以表的形式存储在其中。与MySQL一样,SQLite也支持很多内置函数,如max()、min(),但很多MySQL支持的函数,SQLite不支持。

SQLite是一个数据库管理系统,它是免费提供的,而且与其他数据库管理系统相比,它的架构要简单得多。SQLite的主要特点是无服务器,这意味着它使用机器或操作系统的服务器来操作,而不是使用自己的服务器。

本篇文章主要讨论如何在SQLite中连接字符串。串联函数在SQLite中是否有效?让我们来了解一下。

什么是SQLite中的连接

concatenate这个词的意思是把不同的东西连接成一个系列或链条,MySQL支持一个内置的concat()函数,用来把字符串连接起来,形成一个单一的字符串。

不幸的是,SQLite不支持concat()这个内置函数,但我们可以通过使用concatenate操作符(即"||")来连接SQLite中的两个字符串。 在SQLite中使用连接运算符的一般语法是。

SELECT "string1" || " " || "string2";

这个语法的解释是:

  • 使用SELECT子句来检索数据
  • 用你想连接的字符串替换string1。
  • 用或运算符||来连接下一个字符串
  • 如果你想在两个字符串之间添加空格,则添加空格。
  • 用你想连接的字符串替换字符串2。

如何在SQLite中串联字符串

考虑一个例子来理解串联两个字符串的语法,我们有两个字符串,比如 "John "和 "Paul",我们想在SQLite中串联这两个字符串。

SELECT "John" || " " || "Paul";


如果我们这样运行同样的语句。

SELECT "John" || "Paul";


我们可以看到,名字之间的空格已经被删除。

如何在SQLite中串联表的列

我们可以通过使用操作符"||"来连接表的列;为了了解如何在SQLite中使用连接,我们将创建一个表employees_name,其中有emp_is,emp_first_name和emp_last_name等列。

CREATE TABLE employees_name (emp_id INTEGER, emp_first_name TEXT, emp_last_name TEXT);


现在,在employees_name表中插入一些数据。

INSERT INTO employees_name VALUES (1, "John", "Paul"), (2,"Hannah", "Alexander");

为了显示该表,我们使用语句。

SELECT * FROM employees_name;


为了把上表中的姓和名串联起来,使用

SELECT emp_id, emp_first_name || " " ||  emp_last_name FROM employees_name;


从上面的输出结果中,我们可以看到这两列,emp_first_name和emp_last_name都是相互连接的,它们之间有一个空格。

结论

连接是将两个或两个以上的字符串连接成一个链或系列的过程,为此,MySQL支持一个内置函数concat(),但SQLite不支持它。有很多内置函数不被SQLite支持,但有一些替代方法,我们可以通过它们获得相同的结果。在这篇文章中,我们讨论了如何通过使用SQLite中的连接操作符"||"来实现连接的过程。