我目前有像这样的Django模型
ll <- l %>% map_df(enframe) %>%
mutate(key1=map(value, rownames),
key2=map(value, names),
key=map2(key1, key2, ~c(.x, .y))) %>%
select(-key1, -key2) %>%
unnest()
ll
# A tibble: 12 × 3
name value key
<chr> <dbl> <chr>
1 member1 2.12962812 a
2 member2 -0.87049458 b
3 member2 0.96190007 c
4 member2 0.56403433 d
5 member1 -0.41447472 a
6 member2 0.27270458 b
7 member2 -0.01384829 c
8 member2 -0.71561501 d
9 member1 -0.81835698 a
10 member2 -2.12746977 b
11 member2 0.66185843 c
12 member2 0.07878841 d
由于各种问题,我们的数据完整性已损坏。所以,我需要找到已删除MyFirstObject的实例,但MySecondObject仍有一行外键。
数据库看起来类似于:
ll <- l %>% map_df(enframe) %>%
filter(name=="member2") %>%
mutate(key=map(value, rownames)) %>%
unnest()
ll
# A tibble: 9 × 3
name value key
<chr> <dbl> <chr>
1 member2 -0.87049458 b
2 member2 0.96190007 c
3 member2 0.56403433 d
4 member2 0.27270458 b
5 member2 -0.01384829 c
6 member2 -0.71561501 d
7 member2 -2.12746977 b
8 member2 0.66185843 c
9 member2 0.07878841 d
注意TABLE my_second_object的第3行有一个firstObjectID,它在my_first_object表中没有相应的记录。我想找到这样的所有实例。
如果我在做原始SQL,我会做
MyFirstObject(models.Model):
some_field = models.BooleanField(default=False)
MySecondObject(models.Model):
first_object = models.ForeignKey(MyFirstObject, db_column='firstObjectId')
在Djago,我正在尝试
TABLE my_first_object
id someField
1 a
2 a
3 b
TABLE my_second_object
id firstObjectId
1 1
2 3
3 4
但是当我查看结果的查询时,它正在进行内连接而不是左连接。有没有人有建议?谢谢!
答案 0 :(得分:0)
试试这样:
{{1}}