首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL:在空格处修剪字符串以及DBMS、SQL和MySQL之间的差异

问SQL:在空格处修剪字符串以及DBMS、SQL和MySQL之间的差异
EN

Stack Overflow用户
提问于 2018-11-04 06:48:55
回答 2查看 178关注 0票数 4

我在w3schools上练习并使用了Customers表(您可以在右边选择它)。至于我使用的是哪个DBMS,我不确定。该网站说:“我们的SQL教程将教您如何在以下方面使用SQL : MySQL、Server、MS Access、Oracle、Sybase、Informix、Postgres和其他数据库系统。”--这些DBMS之间的语法是相同的还是非常相似的?

我只想提取顾客的名字。我觉得这应该能起作用:

代码语言:javascript
复制
SELECT LEFT(ContactName, CHARINDEX(' ',ContactName)-1) 
FROM Customers;

它不工作,然而,它什么也不返回。同样,它不处理它,在输出窗口中它向我显示起始页面,所以没有错误消息。我并没有真正理解它背后的实际原因,因为当我将CHARINDEX单独放在SELECT语句中时,它会给出预期的结果。

下一个问题是我如何处理多个空格(当某人有一个中间名),但由于我事先被卡住了,我没有进入这个部分。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-11-04 07:50:49

SQL

  1. systems.SQL是一种用于查询关系数据库的语言,完全形式是结构化查询语言。
  2. Sql类似于更新、删除、查找等。
  3. sql主要采用多线程的概念,其中oracle使用多处理器oracle,用于银行等高数据库处理。
  4. oracle中使用Sql语言作为一种书写语言。5 .In SQL服务器没有事务控制。

MySQL:

  1. MySQL本身也是一个使用SQL语言的数据库工具。它是开源的。
  2. MySQL在插入和删除数据方面比较弱。但是对于数据存储和引用数据来说,这是一个很好的选择。
  3. MySQL是一个关系型数据库管理系统。可以向MySQL数据库提交SQL查询,以存储、检索、修改或删除数据。
  4. 基本上,MySQL是许多包含一切的书籍之一,SQL是如何阅读这本书的。

DataBase管理系统:

  1. 数据库管理系统(DBMS)是一个计算机软件应用程序,它与用户、其他应用程序以及数据库本身进行交互,以捕获和分析数据。
  2. 数据库管理系统(DBMS)是管理数据库结构和控制对存储在数据库中的数据的访问的程序的集合。
  3. DBMS包括MySQL、PostgreSQL、Microsoft、Oracle、Sybase和IBM DB2。
  4. 有时,DBMS被松散地称为数据库。

他们之间的语法非常相似。

实际上,您选择的列是错误的,您是按客户名称索引选择ContactName的,其次,您不需要减去它的索引。这将返回客户的名字。

代码语言:javascript
复制
SELECT LEFT(ContactName, CHARINDEX(' ',ContactName)) 
FROM Customers;
票数 1
EN

Stack Overflow用户

发布于 2018-11-04 07:50:11

我注意到您在查询中使用了两个不同的列: ContactName和CustomerName。为什么会这样呢?

如果您的查询是这样写的,我想您的查询应该可以工作:

代码语言:javascript
复制
SELECT
  LEFT(ContactName, CHARINDEX(' ', ContactName) - 1) AS FirstName
FROM
  Customers;

它还应该使用SUBSTRING,如下所示:

代码语言:javascript
复制
SELECT 
  SUBSTRING(ContactName, 1, CHARINDEX(' ', ContactName) - 1) AS FirstName
FROM 
  Customers;

希望这能有所帮助。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53138444

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档