根据id检查列值是否存在

时间:2015-08-22 10:02:10

标签: mysql sql

我有以下方案,我尝试构建 SQL-Query

对于3种不同的" 级别" - 列类型(类别,文件,文件夹),为每个类型提供相应的" level_id",I尝试获取列的存在(如果设置了值或不存在)" require_login "和" access_key "。

  • 增加: 如果是" 文件夹" -level列" dirname"用于表示id而不是列" level_id"

表:

the data table

示例:

输入数据集:

  • level = 类别:level_id = 3
  • level = 档案:level_id = 5
  • level = 文件夹:dirname =" none / occuring / folder"

这应该给我一个每个级别的描述符,表示是否需要_login'和' access_key'是否设定。例如。如果没有设置则为00;如果只有' access_key'则为01已经确定了。

背景

我打算做的是为每个级别的属性构建一个描述符,该描述符应该在不同的表中使用。

到目前为止,我已经查询了匹配级别和level_id的所有条目,然后在PHP中处理它以获取描述符。

像这样:

SELECT * 
FROM table 
WHERE (level='file' AND level_id = 5) 
   OR (level='category' AND level_id = 3) 
   OR (level='folder' AND dirname = 'none/occuring/folder') 

它可能效率不高,因此在SQL-Query中执行整个操作会很不错。

0 个答案:

没有答案