$Version
(* "12.1.0 for Mac OS X x86 (64-bit) (March 14, 2020)" *)
As mentioned in the comment by Simon Woods, use Quantity
BNikkei = {{10.0032, 27 Days}, {10.0527, 22 Days}, {10.1283, 18 Days}} /.
x_*Days :> Quantity[x, "Days"];
Select[BNikkei, #[[2]] < Quantity[22, "Days"] &]
(* {{10.1283, Quantity[18, "Days"]}} *)
Alternatively, if you are certain that all units are "Days"
Select[BNikkei, QuantityMagnitude[#[[2]]] < 22 &]
(* {{10.1283, Quantity[18, "Days"]}} *)
However, for mixed units
BNikkei2 = Append[BNikkei, {10.1, Quantity[3, "Weeks"]}];
The first method works with mixed units
Select[BNikkei2, #[[2]] < Quantity[22, "Days"] &]
(* {{10.1283, Quantity[18, "Days"]}, {10.1, Quantity[3, "Weeks"]}} *)
The second method requires conversion
Select[BNikkei2 /. q_Quantity :> UnitConvert[q, "Days"],
QuantityMagnitude[#[[2]]] < 22 &]
(* {{10.1283, Quantity[18, "Days"]}, {10.1, Quantity[21, "Days"]}} *)
EDIT: The built-in conversions are
UnitConvert[Quantity[1, #], "Days"] & /@ {"Weeks", "Months", "Years"}
(* {Quantity[7, "Days"], Quantity[365/12, "Days"], Quantity[365, "Days"]} *)
UnitConvert[Quantity[90, "Days"], #] & /@ {"Weeks", "Months", "Years"}
(* {Quantity[90/7, "Weeks"], Quantity[216/73, "Months"],
Quantity[18/73, "Years"]} *)
Quantity
to represent values with units the comparison will work. $\endgroup$