Sobes.tech
Intern

Егер бір клиенттің бірнеше тапсырысы бірдей сомада болса, DENSE_RANK() пен RANK() қалай өзгереді? - DENSE_RANK() келесі санды өткізіп жібереді, RANK() жоқ - DENSE_RANK() бірдей сомаларға бірдей ранг береді және келесі санды өткізіп жібермейді, RANK() өткізіп жібереді - Айырмашылық жоқ - DENSE_RANK() бірегей сандар береді, RANK() бірдей сандар береді

sobes.tech AI

AIден жооп

Дурус жооп:

  • DENSE_RANK() бирдей жыйынтыктарга бирдей ранг берет жана номерлерди өткөрүп жибербейт, RANK() өткөрүп жиберет

Тушундуруу:

  • RANK() бирдей маанилерге бирдей ранг берет, бирок кийинки ранг үчүн номерлерди өткөрүп жиберет. Мисалы, эгер эки заказдун жыйындысы 100 болсо жана биринчи орунду ээлесе, кийинки орун 3 болот.

  • DENSE_RANK() да бирдей маанилерге бирдей ранг берет, бирок номерлерди өткөрүп жибербейт. Ошол эле мисалда кийинки ранг 2 болот.

Ошентип, бир нече заказдар бирдей жыйынтыкта болсо, DENSE_RANK() үзгүлтүксүз рангдарды берет, ал эми RANK() — өткөрүп жиберүүлөр менен.