答案 0 :(得分:1)
我会把它写成一个选择,所以你不要意外地复制粘贴和软管 - 你可以运行它并检查它是否选择了你要删除的行
In [598]: timeit indices_merged_arr_generic(arr)
52.8 µs ± 271 ns per loop (mean ± std. dev. of 7 runs, 10000 loops each)
In [599]: timeit indices_merged_arr_generic(arr3)
66.9 µs ± 434 ns per loop (mean ± std. dev. of 7 runs, 10000 loops each)
In [600]: timeit np.array([(*ij,v) for ij,v in np.ndenumerate(arr)])
21.2 µs ± 40.5 ns per loop (mean ± std. dev. of 7 runs, 10000 loops each)
In [601]: timeit np.array([(*ij,v) for ij,v in np.ndenumerate(arr3)])
59.4 µs ± 1.28 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)
转换为删除应该只是用删除替换select *的情况,但如果不能解决则执行注释..
编辑备注:
使用coalesce来演示如何确保第X行的c2值为null,等同于第Y行的另一个c2值null。为“永远不会出现在表中的值”选择的字符串非常重要'在sql中的两个匹配项中都是相同的,并且它永远不会出现在表中,否则具有空值的行将与具有实际值的其他行匹配