SQLSERVER的TOP

Jun 07, 2016 pm 05:45 PM
sqlserver

相信很多使用SQL很多人都用过TOP语句 使用方法是: SELECT TOP (n) FROM tablename WHERE condition 我们可以很方便的从表tablename去到符合条件的前n条数据。 --------------------------------------------------------------------------------------

相信很多使用SQL很多人都用过TOP语句

使用方法是:

SELECT TOP (n)

FROM tablename

WHERE condition

我们可以很方便的从表tablename去到符合条件的前n条数据。

--------------------------------------------------------------------------------------

例如,我们有表

aaa

表中数据是:

  qq             qq2           

a1         11        

a2         11        

a3         11        

a4         11        

执行:

SELECT TOP (2) qq, qq2
FROM aaa

出来的结果是: 

qq qq2

a1         11        

a2         11        

这正是我们想要的,这个东西还真是不错,用着蛮方便的哟。

--------------------------------------------------------------------------------------

但是,今天程序中跑出来一个东西,发现不是自己想要的东西。

现象是这样的,

数据还是上面的数据,检索条件上面的检索条件,我加了一个order by语句,当然,这个orderby有点特殊,就是,我要排序的列的值全部是相同的。

正常没有TOP条件的情况下

SELECT qq, qq2
FROM aaa
ORDER BY qq2

结果和前面没有orderby是一致,也是和数据库中存放的次序是一样的。

 

  qq             qq2           

a1         11        

a2         11        

a3         11        

a4         11        

当我们增加一个TOP(1)的时候,正常情况下,香港虚拟主机,虚拟主机,我们会认为应该检索出来第一条,美国服务器,也就是【a1】【11】。

SELECT TOP (1) qq, qq2
FROM aaa
ORDER BY qq2

但是,真正检索出来的数据是这样的

qq qq2

a2         11        

这个时候感觉sqlserver做的有点和我们常识不一样了。

同样,当我们换作是TOP(2)的时候,检索出来的第三件和第二件

TOP(3)的时候,检索出来的是第四件和第三件和第二件。

 

SQLSERVER这么做或许也无可厚非,因为排序的字段的值是一样的,可以认为等价的数据,返回谁,按理来说,应该对业务没有什么影响的。

 

*编程中,偶尔也会遇到我们预想之外的事情,也会给我们写惊喜的。

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial Java
1662
14
Tutorial PHP
1262
29
Tutorial C#
1235
24
Bagaimana untuk mengimport fail mdf ke dalam sqlserver Bagaimana untuk mengimport fail mdf ke dalam sqlserver Apr 08, 2024 am 11:41 AM

Langkah import adalah seperti berikut: Salin fail MDF ke direktori data SQL Server (biasanya C:\Program Files\Microsoft SQL Server\MSSQL\DATA). Dalam SQL Server Management Studio (SSMS), buka pangkalan data dan pilih Lampirkan. Klik butang Tambah dan pilih fail MDF. Sahkan nama pangkalan data dan klik butang OK.

Bagaimana untuk menyelesaikan masalah yang objek bernama sudah wujud dalam pangkalan data sqlserver Bagaimana untuk menyelesaikan masalah yang objek bernama sudah wujud dalam pangkalan data sqlserver Apr 05, 2024 pm 09:42 PM

Untuk objek dengan nama yang sama yang telah wujud dalam pangkalan data SQL Server, langkah berikut perlu diambil: Sahkan jenis objek (jadual, paparan, prosedur tersimpan). IF NOT EXISTS boleh digunakan untuk melangkau penciptaan jika objek kosong. Jika objek mempunyai data, gunakan nama lain atau ubah suai struktur. Gunakan DROP untuk memadam objek sedia ada (berhati-hati, sandaran disyorkan). Semak perubahan skema untuk memastikan tiada rujukan kepada objek yang dipadam atau dinamakan semula.

Bagaimana untuk memulihkan pangkalan data yang dipadam secara tidak sengaja dalam sqlserver Bagaimana untuk memulihkan pangkalan data yang dipadam secara tidak sengaja dalam sqlserver Apr 05, 2024 pm 10:39 PM

Jika anda secara tidak sengaja memadamkan pangkalan data SQL Server, anda boleh mengambil langkah-langkah berikut untuk memulihkan: hentikan aktiviti pangkalan data periksa log pangkalan data: pulihkan daripada sandaran menggunakan DBCC; alatan parti. Sila sandarkan pangkalan data anda dengan kerap dan dayakan pengelogan transaksi untuk mengelakkan kehilangan data.

Bagaimana untuk menyemak nombor port sqlserver Bagaimana untuk menyemak nombor port sqlserver Apr 05, 2024 pm 09:57 PM

Untuk melihat nombor port SQL Server: Buka SSMS dan sambung ke pelayan. Cari nama pelayan dalam Object Explorer, klik kanan padanya dan pilih Properties. Dalam tab Sambungan, lihat medan Port TCP.

Apa yang perlu dilakukan jika perkhidmatan sqlserver tidak dapat dimulakan Apa yang perlu dilakukan jika perkhidmatan sqlserver tidak dapat dimulakan Apr 05, 2024 pm 10:00 PM

Apabila perkhidmatan SQL Server gagal dimulakan, berikut ialah beberapa langkah untuk diselesaikan: Semak log ralat untuk menentukan punca. Pastikan akaun perkhidmatan mempunyai kebenaran untuk memulakan perkhidmatan. Semak sama ada perkhidmatan pergantungan sedang berjalan. Lumpuhkan perisian antivirus. Membaiki pemasangan SQL Server. Jika pembaikan tidak berjaya, pasang semula SQL Server.

Di manakah pangkalan data sqlserver? Di manakah pangkalan data sqlserver? Apr 05, 2024 pm 08:21 PM

Fail pangkalan data SQL Server biasanya disimpan di lokasi lalai berikut: Windows: C:\Program Files\Microsoft SQL Server\MSSQL\DATALinux: /var/opt/mssql/data Lokasi fail pangkalan data boleh disesuaikan dengan mengubah suai laluan fail pangkalan data tetapan.

Bagaimana untuk menyelesaikan ralat SqlServer sambungan Java Bagaimana untuk menyelesaikan ralat SqlServer sambungan Java May 01, 2023 am 09:22 AM

Masalahnya didapati bahawa kali ini saya menggunakan pangkalan data SqlServer, yang saya tidak pernah gunakan sebelum ini, tetapi masalahnya tidak serius Selepas saya menyambungkan SqlServer mengikut langkah-langkah dalam dokumen keperluan, saya memulakan projek SpringBoot dan menemui satu. ralat, seperti berikut: Pada mulanya saya fikir ia adalah sambungan SqlServer Terdapat masalah, jadi saya pergi untuk menyemak pangkalan data dan mendapati bahawa segala-galanya dalam pangkalan data saya mula-mula bertanya kepada rakan-rakan saya jika mereka mempunyai masalah seperti itu mendapati bahawa mereka tidak, jadi saya memulakan bahagian terbaik saya, menghadapi pengaturcaraan Baidu. Mesej ralat khusus yang saya mula selesaikan ialah ini, jadi saya memulakan pelaporan ralat Baidu: ERRORc.a.d.p.DruidDataSource$CreateCo

Bagaimana untuk memadam sqlserver jika pemasangan gagal? Bagaimana untuk memadam sqlserver jika pemasangan gagal? Apr 05, 2024 pm 11:27 PM

Jika pemasangan SQL Server gagal, anda boleh membersihkannya dengan mengikuti langkah berikut: Nyahpasang SQL Server Padam kekunci pendaftaran Padam fail dan folder Mulakan semula komputer

See all articles