小编Sar*_*dra的帖子

如何检查一对多映射表中是否存在特定映射

我有一个表来维护EMPLOYEE_ID一个或多个ROLE_ID可以分配给员工的s 的映射.这ROLE_IDROLE表的主键.

现在,我试图找出一个特定的员工是否是团队负责人(ROLE_ID = 2).也就是说,本质上,试图找出映射表中是否存在(EMPLOYEE_ID,2)的特定映射组合.

目前,我使用以下查询来实现此目的:

SELECT E.NAME AS `EMPLOYEE_NAME`, 
 EXISTS( SELECT 1 FROM `EMPLOYEE_ROLE` WHERE 
   (`EMPLOYEE_ROLE`.`EMPLOYEE_ID` = `E`.`EMPLOYEE_ID`)
   AND (`EMPLOYEE_ROLE`.`ROLE_ID` = 2)) AS `IS_TEAM_LEADER`
 -- Assume some other column shall be selected from ER table, 
 -- hence necessitating the JOIN on ER
FROM EMPLOYEE E
JOIN EMPLOYEE_ROLE ER ON (ER.EMPLOYEE_ID = E.EMPLOYEE_ID)
GROUP BY E.EMPLOYEE_ID;
Run Code Online (Sandbox Code Playgroud)

虽然这似乎完成了工作,但我正在寻找一种更有效的方法,因为当前形式的子查询似乎是多余的.不确定它是否相关,但可以使用FIND_IN_SET或使用某些功能吗?

任何人都可以建议一个解决方案,因为我对最佳表现方法感兴趣吗?

编辑1:我故意使用了JOIN EMPLOYEE_ROLE意图,也可以从ER表中挑选其他一些列.所以,我正在寻找优化子查询,同时保持连接完好无损.因此,声明"当前形式的当前子查询似乎是多余的".

SQLFiddle:http://sqlfiddle.com/#!9/2aad3/5

mysql query-performance

13
推荐指数
1
解决办法
649
查看次数

在页面加载时下载文件不起作用

我一直在尝试通过执行以下操作在页面加载时下载文件:

<div onload="download()"></div>
<a id="dl" style="display: none" 
    href="http://www.miniclip.com/games/base-jumping/en/base_jumping_miniclip.swf" 
    download>Download</a>

<script>
function download(){
   document.getElementById('dl').click();
}
</script>
Run Code Online (Sandbox Code Playgroud)

它应该做的是在页面加载“点击”隐藏的下载链接时触发一个功能。但是,这种方法不起作用,我不知道为什么。

有人知道为什么吗?

javascript download

1
推荐指数
1
解决办法
7164
查看次数

Javascript Arrays在数组项之前打印undefined

我在javascript中打印一个简单的数组列表时遇到问题.仅在两个数组项之前打印undefined.请考虑以下代码;

function buildList(){
    var box = document.getElementById("box");
	var startList  = "<ol>";
	var endList = "</ol>";
	var listItems;
      
        var arry = ["Go to shopping", "Go to Mall"];
  	for(var i = 0; i < arry.length; i++){
            listItems += "<li>" + arry[i] + "</li>";
	}

	box.innerHTML = startList + listItems + endList;
}
document.onLoad(buildList());``
          
Run Code Online (Sandbox Code Playgroud)
<div id="box">
  
</div>
Run Code Online (Sandbox Code Playgroud)

输出是

undefined 1)去购物2)去购物中心

请帮忙.

html javascript arrays initialization undefined

1
推荐指数
1
解决办法
1360
查看次数

fabricjs以编程方式将光标移动到文本框的末尾

我有一个文本框,在将文本内容添加到画布上时想在其中放置文本内容,并希望使其处于活动状态。这样,用户可以在添加默认文本后开始书写。我添加了enterEditing()哪个活动文本框,但在开始时移动了光标。

var object = canvas.getActiveObject('textbox');
canvas.setActiveObject(object);
object.setText("Start");
object.enterEditing();
Run Code Online (Sandbox Code Playgroud)

fabricjs

1
推荐指数
1
解决办法
664
查看次数