说我得到了这个SQL架构。
表格工作:
id,title, type, is_enabled
表JobFileCopy:
job_id,from_path,to_path
表JobFileDelete:
job_id, file_path
表JobStartProcess:
job_id, file_path, arguments, working_directory
还有许多其他表具有不同数量的列,它们都有外键job_id,它链接到表Job中的id。
我的问题:
这是正确的方法吗?我没有要求随时删除任何内容。我将要求主要选择和插入。
其次,从单个数据库命中的所有不同表中获取具有相关详细信息的作业列表的最佳方法是什么?例如,我想选择前20个具有详细信息的作业,它们的详细信息可以在任何表中(取决于表Job中的列类型),直到运行时我才知道。
答案 0 :(得分:0)
select (case when type = 'type1' then (select field from table1) else (select field from table2) end) as a from table;
它可以成为您的解决方案吗?