SQLite硬查询格式化结果

时间:2011-11-20 01:51:20

标签: sql sqlite format

我需要编写一个查询,以下列格式返回数据库中的元素。 之前,重要的是要说我有一个选项卡,其中有一个文件夹列表,而在另一个选项卡中有一个对象列表。并非每个文件夹都有一个对象。 我的目标是返回这种信息:

FOLDER_NAME OBJECT_NAME

如果文件夹对应一个或多个对象; 或

FOLDER_NAME "NO_ELEMENTS"

如果该文件夹与任何对象不对应。

表格结构:

TAB_FOLD: id_folder,folder_name

TAB_ELEMENTS: id_folder,id_object,object_name

这是我试着写的:

IF ( (SELECT COUNT(*) FROM TAB_OBJECT WHERE ID_FOLDER=X) > 0 )
{
  SELECT ID_FOLDER, ID_OBJECT, OBJECT_NAME FROM TAB_FOLD WHERE ID_FOLDER=X
}
ELSE 
{
  X, "NO_ELEMENTS"
}

1 个答案:

答案 0 :(得分:0)

也许是这样的?

select f.folder_name, coalesce(e.object_name, 'NO_ELEMENTS')
from tab_fold f left join tab_elements e on f.id_folder=e.id_folder
order by 1,2