in driver/src/main/scala/com/datastax/spark/connector/types/TypeConverter.scala [951:968]
private def orderingFor(tpe: Type): Option[Ordering[_]] = {
if (tpe =:= typeOf[Boolean]) Some(implicitly[Ordering[Boolean]])
else if (tpe =:= typeOf[Byte]) Some(implicitly[Ordering[Byte]])
else if (tpe =:= typeOf[Short]) Some(implicitly[Ordering[Short]])
else if (tpe =:= typeOf[Int]) Some(implicitly[Ordering[Int]])
else if (tpe =:= typeOf[Long]) Some(implicitly[Ordering[Long]])
else if (tpe =:= typeOf[Float]) Some(implicitly[Ordering[Float]])
else if (tpe =:= typeOf[Double]) Some(implicitly[Ordering[Double]])
else if (tpe =:= typeOf[String]) Some(implicitly[Ordering[String]])
else if (tpe =:= typeOf[BigInt]) Some(implicitly[Ordering[BigInt]])
else if (tpe =:= typeOf[BigDecimal]) Some(implicitly[Ordering[BigDecimal]])
else if (tpe =:= typeOf[java.math.BigInteger]) Some(implicitly[Ordering[java.math.BigInteger]])
else if (tpe =:= typeOf[java.math.BigDecimal]) Some(implicitly[Ordering[java.math.BigDecimal]])
else if (tpe =:= typeOf[java.util.Date]) Some(implicitly[Ordering[java.util.Date]])
else if (tpe =:= typeOf[java.sql.Date]) Some(Ordering.by((x: java.sql.Date) => x.getTime))
else if (tpe =:= typeOf[UUID]) Some(implicitly[Ordering[UUID]])
else None
}