MATCH (g:Game)-[:PLAYER]->(u:User)-[r1:AT]->(b1:Block)-[:NEXT]->(b2:Block)
WHERE g.game_id='G222' and u.email_id = 'xyz@example.com' and b1.block_id='16'
SET r1.status='Skipped', r1.enddate=20141225
WITH u, b2,b1, g, r1
SET b1.test = CASE b2.fork
WHEN 'y' THEN
MERGE (u)-[r2:STAGE {startdate:20141225, enddate:'99999999', status:'InProgress'}]->(b2 {fork:'fail'}) RETURN 1
ELSE
MERGE (u)-[r2:STAGE {startdate:20141225, enddate:'99999999', status:'InProgress'}]->(b2) RETURN 2
END
WITH u, g
MATCH (u)-[:TIME]->(h:Time)<-[:TIME]-(g)
SET h.after = 0
SET h.before = h.before + 1
要执行条件写操作,需要使用foreach
技巧。使用case
可以返回一个元素数组或一个空数组。foreach
迭代case
表达式,因此有条件地执行操作。如果您也想要一个else
部分,则需要另一个foreach
,使用大小写
中的反向条件。作为一个例子,而不是
WHEN 'y' THEN
MERGE (u)-[r2:STAGE {startdate:20141225, enddate:'99999999', status:'InProgress'}]->(b2 {fork:'fail'}) RETURN 1
ELSE
MERGE (u)-[r2:STAGE {startdate:20141225, enddate:'99999999', status:'InProgress'}]->(b2) RETURN 2
END
使用
FOREACH(ignoreMe IN CASE WHEN 'y' THEN [1] ELSE [] END |
MERGE (u)-[r2:STAGE {startdate:20141225, enddate:'99999999', status:'InProgress'}]->(b2 {fork:'fail'})
)
FOREACH(ignoreMe IN CASE WHEN NOT 'y' THEN [1] ELSE [] END |
MERGE (u)-[r2:STAGE {startdate:20141225, enddate:'99999999', status:'InProgress'}]->(b2)
)
请参阅Mark在这方面的博客文章。
QueryDsl 3.3.4 Hibernate 3.6.10-Final I有两个实体: org.hibernate.hql.ast.tree.SelectClause.InitializeExplicitSelectClause(SelectClause.java:156)
问题内容: 我正在尝试创建一个switch语句,但似乎无法使用被求值的表达式(而不是设置的字符串/整数)。我可以轻松地使用if语句来执行此操作,但希望大小写应该更快。 我正在尝试以下 我缺少明显的东西吗?Google在这种情况下并不友好。 任何帮助/指针表示赞赏 问题答案: 你总是可以做 它之所以有效是因为它是一个常量,因此将执行第一个case语句下带有计算结果为true的表达式的代码。 我猜这有
我目前正在学习Haskell,突然遇到了这个表达式。 我的直觉是,由于用0除法,这将导致运行时错误,但从测试来看,情况并非如此。 我的结论是,这一定是由于Haskell内部的懒惰评估。因为匹配任何东西,所以它不会检查它与什么比较? 所以,如果有人能告诉我这个评估是否正确,如果不正确,为什么。另外,请详细说明在不实际查看表达式的情况下,案例行可以匹配的前提。
问题内容: 我的转换案例声明昨天运行良好。但是,当我今天早些时候运行代码时,eclipse给我一个错误,强调了红色的case语句,并说:case表达式必须是常量表达式,它是常量,我不知道发生了什么。这是我的代码如下: 所有R.id.int都用红色下划线。 问题答案: 在常规的Android项目中,资源R类中的常量声明如下: 但是,从ADT 14开始,在图书馆项目中,它们将这样声明: 换句话说,常数
问题内容: 我有一个XYZ模型,我需要获取给定查询集的字段a,b和表达式x / y的最大值。 它适用于田野。就像是: 但是,我找不到一种针对表达式的方法。尝试类似的东西: 给出一个错误: 尝试类似的东西: 给出一个错误: 甚至像: 同样不起作用,并给出与上述相同的错误: 我发现可以做到的一个技巧是: 之所以有效,是因为它会生成正确的SQL,但令人困惑,因为我确实在z属性处获得了正确的值,但没有获得
本文向大家介绍Ruby中case表达式详解,包括了Ruby中case表达式详解的使用技巧和注意事项,需要的朋友参考一下 Ruby的case表达式有两种形式: 第一种形式接近于一组连续的if语句:它让你列出一组条件,并执行第一个为真的条件表达式所对应的语句。 第二种形式,在case语句的顶部指定一个目标,而每个when从句列出一个或者多个比较条件 和if一样,case返回执行的最后一个表达式的值;而