MYSQL 查询帮助- Substring 和 Instring

标签 mysql sql

我需要帮助编写查询以从表中获取一些数据。我正在尝试编写一个查询,该查询将选择名称中包含“bill”的所有书名,并显示书名、书名长度以及“bill”之后的书名部分。我知道你应该使用 substring 和 instring 函数,但我一直遇到语法错误和/或不正确的输出

书表如下

CREATE TABLE Book( 
   ISBN        CHAR(13),
   Title       VARCHAR(70) NOT NULL,
   Description VARCHAR(100),
   Category    INT,
   Edition     CHAR(30),
   PublisherID INT         NOT NULL,
   constraint book_ISBN_pk PRIMARY KEY (ISBN),
   constraint book_category_fk FOREIGN KEY (Category) REFERENCES Category(CatID),
   constraint book_publisherID_fk FOREIGN KEY (PublisherID) REFERENCES Publisher(PublisherID)
);

最佳答案

这是标准 SQL 版本,afaik mysql 也应该支持这些功能:

select 
   Title
  ,char_length(Title)
  ,substring(Title from position('bill' in Title) + 4)
from book
where Title like '%bill%'

关于MYSQL 查询帮助- Substring 和 Instring,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30155868/

相关文章:

php - 排名查询不起作用

mysql - 使用触发器从行生成行

sql - 在 MySQL 中更新多个值

mysql - 将行交换为列

c# - 关键字 "Primary"附近的语法不正确

python - 在 MySQL 中使用 SP 更新/标记重复条目

php - 多个 xml feed、sql 匹配

Mysql 替代索引,用于对非唯一字段进行高效的数据库数据分组

mysql - 为什么给定的语法在 mysql 中有效?

java - 尝试获取对象列表时应该使用通用类型还是通配符?