【问题标题】:how to check whether a column in mysql table is comma separated list of values of not [closed]如何检查mysql表中的列是否是逗号分隔的非值列表[关闭]
【发布时间】:2020-10-18 20:46:58
【问题描述】:

我有一列 media_type 包含以下示例值

*media_type*
-------------------
socialmedia, paper
tv
paper, tv
pamplet,board
tv,board,pamplet

我想过滤仅通过一种媒体宣传的促销活动。

【问题讨论】:

  • 只使用mysql,可以使用LOCATE()函数。
  • 如果它是关系数据库中的表,则无需担心,因为它不可能包含分隔列表。如果它包含一个分隔列表,那么它不可能是关系数据库中的表,所以不是我们的问题。

标签: mysql sql string where-clause sql-like


【解决方案1】:

你可以使用locate():

select *
from mytable
where not locate(',', media_type)

这句话为:获取所有media_type 不是null 且不包含逗号的行。

更便携的方法使用like

select *
from mytable
where media_type not like '%,%'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多