Isih mengikut dalam MS SQL Server
Pesanan mengikut ialah klausa dalam SQL. Ia digunakan untuk mengisih set hasil pertanyaan dalam tertib menaik atau menurun. Ia boleh diisih menggunakan satu atau lebih lajur. Dalam artikel ini, kita akan membincangkan Susunan mengikut klausa dalam MS SQL Server.
Tatabahasa
Sintaks untuk menggunakan klausa Susunan dalam MS SQL Server adalah seperti berikut -
SELECT column1, column2, ... FROM table_name ORDER BY column1 [ASC|DESC], column2 [ASC|DESC], ...;
Penjelasan tatabahasa
PILIH lajur1, lajur2, ...: Tentukan lajur yang ingin kami dapatkan semula daripada jadual.
FROM table_name: Nyatakan nama jadual dari mana kami ingin mendapatkan data.
PESANAN MENGIKUT lajur1 [ASC|DESC], lajur2 [ASC|DESC], ...: Isih set hasil dalam susunan menaik atau menurun mengikut lajur yang ditentukan.
Isih menaik
Secara lalai, Klausa Susunan mengikut susunan keputusan yang ditetapkan dalam tertib menaik. Untuk mengisih keputusan yang ditetapkan dalam tertib menaik, kami tidak perlu menentukan kata kunci ASC secara eksplisit.
Contoh 1
SELECT * FROM customers ORDER BY customer_name;
Dalam contoh ini, set hasil akan diisih dalam tertib menaik berdasarkan lajur nama_pelanggan.
Contoh 2
Andaikan kita mempunyai jadual bernama "Pekerja" yang mengandungi lajur dan data berikut -
ID Pekerja |
Nama pekerja |
Jabatan |
Gaji |
---|---|---|---|
1 |
John |
IT |
50000 |
2 |
Jane |
JUALAN |
45000 |
3 |
Bob |
IT |
55000 |
4 |
Alice |
Sumber Manusia |
40000 |
5 |
Tom |
Sumber Manusia |
42000 |
Jika kami ingin mendapatkan semua data dari jadual Pekerja dan mengisih mengikut lajur Gaji dalam tertib menaik, pertanyaan SQL akan menjadi -
SELECT * FROM Employees ORDER BY Salary;
Keluaran pertanyaan di atas ialah -
ID Pekerja |
Nama pekerja |
Jabatan |
Gaji |
---|---|---|---|
4 |
Alice |
Sumber Manusia |
40000 |
5 |
Tom |
Sumber Manusia |
42000 |
2 |
Jane |
JUALAN |
45000 |
1 |
John |
IT |
50000 |
3 |
Bob |
IT |
55000 |
Isih mengikut tertib menurun
Untuk mengisih set hasil dalam susunan menurun, kita perlu menentukan kata kunci DESC selepas nama lajur.
Contoh 1
SELECT * FROM customers ORDER BY customer_name DESC;
Dalam contoh ini, set hasil akan diisih mengikut tertib menurun berdasarkan lajur nama_pelanggan.
Contoh 2
Jika kami ingin mendapatkan semula semua data daripada jadual pekerja dan mengisih mengikut lajur jabatan dalam tertib menurun, pertanyaan SQL akan menjadi -
SELECT * FROM Employees ORDER BY Department DESC;
Keluaran pertanyaan di atas ialah
ID Pekerja |
Nama pekerja |
Jabatan |
Gaji |
---|---|---|---|
2 |
Jane |
JUALAN |
45000 |
1 |
John |
IT |
50000 |
3 |
Bob |
IT |
55000 |
5 |
Tom |
Sumber Manusia |
42000 |
4 |
Alice |
Sumber Manusia |
40000 |
按多列排序
我们还可以按多列对结果集进行排序。在本例中,Order by 子句首先根据第一列对结果集进行排序,然后根据第二列对结果集进行排序。
示例 1
SELECT * FROM customers ORDER BY country, customer_name;
在此示例中,结果集将根据国家/地区列按升序排序。如果两行或多行具有相同的国家/地区,则这些行将根据 customer_name 列按升序排序。
示例 2
如果我们想从Employees表中检索所有数据,并首先按Department列升序排序,然后按Salary列升序排序,SQL查询将是 -
SELECT * FROM Employees ORDER BY Department DESC;
上述查询的输出为
员工ID |
员工姓名 |
部门 |
薪资 |
---|---|---|---|
2 |
简 |
销售 |
45000 |
1 | 约翰 |
IT |
50000 |
3 |
鲍勃 |
IT |
55000 |
5 |
汤姆 |
人力资源 |
42000 |
4 |
爱丽丝 |
人力资源 |
40000 |
按多列排序
我们还可以按多列对结果集进行排序。在本例中,Order by 子句首先根据第一列对结果集进行排序,然后根据第二列对结果集进行排序。
示例 1
SELECT * FROM customers ORDER BY country, customer_name;
在此示例中,结果集将根据国家/地区列按升序排序。如果两行或多行具有相同的国家/地区,则这些行将根据 customer_name 列按升序排序。
示例 2
如果我们想要从Employees表中检索所有数据,并首先按Department列升序排序,然后按Salary列升序排序,那么SQL查询将是
SELECT * FROM Employees ORDER BY Department ASC, Salary ASC;
上述查询的输出为
员工ID |
员工姓名 |
部门 |
薪资 |
---|---|---|---|
4 |
爱丽丝 |
人力资源 |
40000 |
5 |
汤姆 |
人力资源 |
42000 |
1 |
约翰 |
IT |
50000 |
3 |
鲍勃 |
IT |
55000 |
2 |
简 |
销售 |
45000 |
这些示例演示了如何使用 Order by 子句对 MS SQL Server 中的查询结果集进行排序。
使用 NULL 值排序
当我们使用 Order by 子句时,NULL 值的排序方式有所不同,具体取决于我们是按升序还是降序排序。按升序排列,首先显示 NULL 值,按降序排列,最后显示 NULL 值。
例如
SELECT * FROM customers ORDER BY city DESC;
在此示例中,结果集将根据城市列按降序排序。 NULL 值将显示在最后。
结论
MS SQL Server 中的 Order by 子句是一个功能强大的工具,它允许我们根据一个或多个列以升序或降序对查询结果集进行排序。通过了解 Order by 子句的语法和用法,我们可以创建更复杂且更有意义的查询来从数据库中检索数据。
Atas ialah kandungan terperinci Isih mengikut dalam MS SQL Server. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Artikel ini membincangkan menggunakan pernyataan jadual Alter MySQL untuk mengubah suai jadual, termasuk menambah/menjatuhkan lajur, menamakan semula jadual/lajur, dan menukar jenis data lajur.

Artikel membincangkan mengkonfigurasi penyulitan SSL/TLS untuk MySQL, termasuk penjanaan sijil dan pengesahan. Isu utama menggunakan implikasi keselamatan sijil yang ditandatangani sendiri. [Kira-kira aksara: 159]

Artikel membincangkan strategi untuk mengendalikan dataset besar di MySQL, termasuk pembahagian, sharding, pengindeksan, dan pengoptimuman pertanyaan.

Artikel membincangkan alat MySQL GUI yang popular seperti MySQL Workbench dan PHPMyAdmin, membandingkan ciri dan kesesuaian mereka untuk pemula dan pengguna maju. [159 aksara]

Artikel ini membincangkan jadual menjatuhkan di MySQL menggunakan pernyataan Jadual Drop, menekankan langkah berjaga -jaga dan risiko. Ia menyoroti bahawa tindakan itu tidak dapat dipulihkan tanpa sandaran, memperincikan kaedah pemulihan dan bahaya persekitaran pengeluaran yang berpotensi.

Artikel membincangkan menggunakan kunci asing untuk mewakili hubungan dalam pangkalan data, memberi tumpuan kepada amalan terbaik, integriti data, dan perangkap umum untuk dielakkan.

Artikel ini membincangkan membuat indeks pada lajur JSON dalam pelbagai pangkalan data seperti PostgreSQL, MySQL, dan MongoDB untuk meningkatkan prestasi pertanyaan. Ia menerangkan sintaks dan faedah mengindeks laluan JSON tertentu, dan menyenaraikan sistem pangkalan data yang disokong.

Artikel membincangkan mendapatkan MySQL terhadap suntikan SQL dan serangan kekerasan menggunakan pernyataan yang disediakan, pengesahan input, dan dasar kata laluan yang kuat. (159 aksara)
