我有一个表格,其中列中的某些条目由'和' /'或'分隔。关键字。我想知道是否可以检查是否有'和'或者是&或39在单元格中并返回值。
Example table:
id company file users
1 ABC file1 and file2 and file3 men and women
2 DEF file1 men
3 GHI file2 women or men
4 jkl file1 or file2 women
5 mno file1 and file2 men
如何检索该公司ABC分别有file1和file2。我想根据文件类型附加文件扩展名,这就是为什么需要它们。
换句话说,我将为选定的ID'添加一行。在表中然后我想看看文件是否有'和'或者'或'或者只是一个条目。将表格标准化是一个好主意。如果是的话,请提出任何建议。或者在获得所需的行后,使用mysql或PHP中的关键字执行REGEXP函数是否方便。我有大约1000个条目。欢迎任何建议。
由于
答案 0 :(得分:0)
您可以使用LIKE
$ sql =' SELECT公司,文件,用户 从表 文件LIKE"%和%"或提交LIKE"%或%"';
〜专利
答案 1 :(得分:0)
创建一个像这样的表格&继续简单的查询,这是一般的想法,而不是详细的解决方案,但它的工作原理:
exampleId | file | type
-------------|------------|----------
1 | file1 | -
1 | file2 | and
1 | file3 | and
2 | file1 | -
3 | file2 | -
4 | file1 | -
4 | file2 | or
5 | file1 | -
5 | file2 | and
您可以在MySQL中使用内部Regexp。如果找到and
/ or
,则返回1
,否则将返回0
:
$query = SELECT 'file' REGEXP '(and|or)+';
只需检索文件列&之后,您可以and
检查or
/ strpos()
。它会告诉您文件列中是否有and
或or
。