查出 product 表中所有 detail 字段包含 xxx 的完整记录
您可以使用以下 SQL 查询语句来查出 product 表中所有 detail 字段包含 oss.kxlist.com 的完整记录:
SELECT *
FROM `product`
WHERE INSTR(`detail`, 'oss.kxlist.com') > 0;
- 下面是detail字段包含的完整内容
<p><img style="max-width:100%;" src="//oss.kxlist.com//4028808970bd1e7c0172115f43dd0194/commodity/20201231/20201231104204_f8a3d2.jpg"/><img style="max-width:100%;" src="//oss.kxlist.com//4028808970bd1e7c0172115f43dd0194/commodity/20201231/20201231104204_d7ee5c.jpg"/><img style="max-width:100%;" src="//oss.kxlist.com//4028808970bd1e7c0172115f43dd0194/commodity/20201231/20201231104202_108cd0.jpg"/><img style="max-width:100%;" src="//oss.kxlist.com//4028808970bd1e7c0172115f43dd0194/commodity/20201231/20201231104204_5f6598.jpg"/><br/></p><p><br/></p>
语句解释:
- SELECT *: 这部分表示我们要查询并返回- product表中所有列的数据。- *是通配符,代表表中的所有列。
- FROMproduct``: 这部分指定我们要查询的表是- product表。 请再次确认表名是否正确,并根据实际情况替换。
- WHERE INSTR(detail- , 'oss.kxlist.com') > 0:- WHERE子句用于筛选记录,与之前统计数量的查询语句中的- WHERE子句完全相同。- INSTR(detail- , 'oss.kxlist.com'): 在- detail字段中查找- 'oss.kxlist.com'子字符串,返回子字符串的起始位置,找不到则返回 0。
- > 0: 只选择- INSTR()返回值大于 0 的记录,即- detail字段中包含- 'oss.kxlist.com'的记录。
 
如何执行查询:
和之前的统计查询一样,您可以使用任何 MySQL 客户端工具连接到您的数据库,并将上述 SQL 语句粘贴到查询窗口中执行。
查询结果:
执行这个查询后,您将得到一个结果集,其中每一行都是 product 表中 detail 字段包含 oss.kxlist.com 的一条完整记录。 结果集会包含 product 表的所有列 (例如 id, name, detail, created_date, ... 等)。
可选方法 (使用 LIKE 运算符):
同样,您也可以使用 LIKE 运算符来实现相同的查询,虽然通常 INSTR() 函数性能更好,但在简单场景下 LIKE 也很方便:
SELECT *
FROM `product`
WHERE `detail` LIKE '%oss.kxlist.com%';
语句解释:
- WHEREdetail- LIKE '%oss.kxlist.com%': 使用- LIKE运算符进行模式匹配,- '%oss.kxlist.com%'模式表示匹配- detail字段中任何位置包含- oss.kxlist.com的字符串。
选择 INSTR() 或 LIKE 都可以,根据您的偏好和实际情况选择即可。 执行上述任一查询语句,您都能够获取到所有符合 detail 字段包含 oss.kxlist.com 条件的产品记录,方便您进行进一步的检查或数据更新操作。

