首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何过滤mysql中包含特定字母的数据?

如何过滤mysql中包含特定字母的数据?
EN

Stack Overflow用户
提问于 2018-04-24 07:51:56
回答 1查看 104关注 0票数 0

我有一个表pub,它看起来像下表:

代码语言:javascript
复制
+------------+----------------------------------+
| pub_id     | pub_name                         |
+------------+----------------------------------+
| P0010101   | Jex Max Publication              |
| P0020101   | BPP Publication                  |
| H0030102   | New Harrold Publication          |
| H0040101   | Ultra Press Inc.                 |
| P0050101   | Mountain Publication             |
| P0060103   | Summer Night Publication         |
| P0070104   | Pieterson Grp. of Publishers     |
| P0080102   | Novel Publisher Ltd.             |
+--------+--------------------------------------+

我想用AND子句进行过滤,如果在列pub_id中包含P0第1到2个 letter和0101第3到6个 letter中,则包含所有句子。

我试过了:

代码语言:javascript
复制
SELECT pub_id, pub_name FROM pub WHERE LEFT(pub_id,2) = 'P0' and pub_id LIKE '%0101%'

但是结果是这样的

代码语言:javascript
复制
+------------+----------------------------------+
| pub_id     | pub_name                         |
+------------+----------------------------------+
| P0010101   | Jex Max Publication              |
| P0020101   | BPP Publication                  |
| P0050101   | Mountain Publication             |
+--------+--------------------------------------+

我对结果的期望如下:

代码语言:javascript
复制
+------------+----------------------------------+
| pub_id     | pub_name                         |
+------------+----------------------------------+
| P0010101   | Jex Max Publication              |
+------------+----------------------------------+
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-04-24 07:57:56

您可以只使用pub_id LIKE 'P00101%'。那么你就不需要left()了。

Documentation on LIKE

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

https://stackoverflow.com/questions/49991488

复制
相关文章

相似问题

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