我正在尝试以下命令:
SELECT * FROM mytable WHERE field IN(1,2,3, NULL, 5) 结果是 {r1,r2,r3} 我想要 {r1,r2,r3,NULL,r4},我该怎么做?谢谢!
我正在尝试以下命令:
SELECT * FROM mytable WHERE field IN(1,2,3, NULL, 5) 结果是 {r1,r2,r3} 我想要 {r1,r2,r3,NULL,r4},我该怎么做?谢谢!
你不能。Facebook 会自动从行中过滤掉 NULL 结果。也不能保证结果与您在IN
标准中传递的参数的顺序相同。
你也不能SELECT *
在 FQL 中。您必须单独选择要返回的字段。
你需要做这样的事情:
THINGS_TO_FIND = array (1,2,3,NULL,5)
RESULT = FQL_URL + urlencode('SELECT field1, field2 FROM table WHERE field1 IN ' + THINGS_TO_FIND')
foreach (THING in THINGS_TO_FIND) {
foreach (ITEM in RESULT) {
if THING == ITEM->field1 then OUTPUT->field1 = ITEM->field2
}
}