Rownum SQL дээр хэрхэн ажилладаг вэ?
Rownum SQL дээр хэрхэн ажилладаг вэ?

Видео: Rownum SQL дээр хэрхэн ажилладаг вэ?

Видео: Rownum SQL дээр хэрхэн ажилладаг вэ?
Видео: SQL дээр ROWNUM болон ROWID | oracle мэдээллийн сан 2024, Арваннэгдүгээр
Anonim

Oracle PL дээр/ SQL , a ROWNUM гэсэн псевдо багана юм эгнээний дугаар a-ийн олж авсан үр дүнгийн багцад SQL асуулга. Энэ нь эхний мөрөнд 1 оноож эхэлж, тоог нэмэгдүүлнэ ROWNUM дараагийн мөр бүрийг буцаасан утга. Асуулгын үр дүнгийн багцыг шүүлтүүрээр хязгаарлаж болно ROWNUM WHERE заалт дахь түлхүүр үг.

Үүний нэгэн адил та SQL-д Rownum-г хэрхэн ашиглах вэ гэж асууж магадгүй юм.

Та ашиглаж болно ROWNUM асуулгад буцаасан мөрийн тоог хязгаарлахын тулд энэ жишээн дээрх шиг: SELECT * FROM ажилчдыг ХААНА ROWNUM < 10; Дараа нь ORDER BY заалт байвал ROWNUM ижил асуулгад мөрүүдийг ORDER BY заалтаар дахин эрэмбэлэх болно. Үр дүн нь мөрүүдэд хандах аргаас хамаарч өөр өөр байж болно.

Дээрээс нь SQL-д Rowid болон Rownum гэж юу вэ? Бодит ялгаа rowid болон rownum нь, тэр хэрүүлтэй нь тухайн мөрийн байнгын өвөрмөц танигч юм. Гэсэн хэдий ч, rownum түр зуурынх. Хэрэв та асуусан асуултаа өөрчилвөл rownum тоо нь өөр эгнээнд хамаарах болно, the хэрүүлтэй болохгүй. Тиймээс ROWNUM нь тодорхой зүйлд хамаарах дараалсан тоо юм SQL зөвхөн мэдэгдэл.

Мөн Row_number () SQL дээр юу хийдэг вэ?

The ROW_NUMBER() нь асуулгын үр дүнгийн багц дахь мөр бүрт дараалсан бүхэл тоо оноодог цонхны функц. Энэ синтаксийн нэгдүгээрт, PARTITION BY заалт нь FROM заалтаас буцаж ирсэн үр дүнгийн багцыг хуваалтуудад хуваадаг. PARTITION BY заалт байна сонголттой.

Бид Rownum-ийг where заалтад ашиглаж болох уу?

Хоёулаа ROWNUM болон ROW_NUMBER() ДЭЭШ() байна ХААНА-д зөвшөөрнө заалт дэд сонголтын ба байна үр дүнгийн багцын хэмжээг хязгаарлахад ашигтай. Хэрэв Та ROWNUM ашигладаг ХААНА заалт мөн ЗАХИАЛГА байдаг заалт ижил дэд сонголтын өмнө дарааллыг хэрэглэнэ ROWNUM предикатыг үнэлдэг.

Зөвлөмж болгож буй: