У меня была такая же проблема (например, индексирование с несколькими условиями, здесь она находила данные в определенном диапазоне дат). (a-b).any()
или (a-b).all()
кажутся неработоспособными, по крайней мере для меня.
В качестве альтернативы я нашел другое решение, которое отлично работает для моей желаемой функциональности (https://stackoverflow.com/questions/12647471/the-truth-value-of-an-array-with-more -than-one-element-is-ambigous-when-try-t ).
Вместо использования предложенного выше кода просто работа с numpy.logical_and(a,b)
будет работать. Здесь вы можете переписать код как
selected = r(logical_and(r["dt"] >= startdate, r["dt"] <= enddate))
Просто вы можете использовать ISNULL
, как показано ниже
SELECT @EnrollmentTime=ISNULL(@EnrollmentTime, T1.EnrollmentTime)
FROM T1
INNER JOIN T2 ON T1.DeviceMacAddress=T2.DeviceMacAddress
WHERE T1.ID=@LocationID