Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Between istället för Top?

Postades av 2004-03-18 22:05:53 - Tård Wennerborg, i forum databaser, Tråden har 3 Kommentarer och lästs av 826 personer

SQL Server
MySQL
Access

Man kan ju välja ett visst antal rader från toppen en frågas resultat med :
<code>
SELECT TOP #, * FROM table
</code>

Men om man vill välja en serie rader någonstans mitt i typ:
<code>
SELECT BETWEEN # AND #, * FROM table
</code>
(felaktig kod, endast för att beskriva vad jag vill göra)

Hur gör man? (Främst intresserad av en lösning för MS SQL-server, men är även intresserad för MySQL och Access då jag jobbar med dessa med ibland)


Svara

Sv: Between istället för Top?

Postades av 2004-03-19 00:24:40 - Andreas Hillqvist

Flrutom LIMIt känner jag bara till kommando LIMIT i MySQL:

[LIMIT [offset,] row_count | row_count OFFSET offset]

The LIMIT clause can be used to constrain the number of rows returned by the SELECT statement. LIMIT takes one or two numeric arguments, which must be integer constants. With two arguments, the first argument specifies the offset of the first row to return, and the second specifies the maximum number of rows to return. The offset of the initial row is 0 (not 1):

http://www.mysql.com/doc/en/SELECT.html

Fast du kan ju med TOP, vilket till för SQL standarden.

Här är ett exempel som plockar ut post 15 till 25.
<code>
SELECT Orders.*
FROM Orders
WHERE Orders.OrderID BETWEEN
(SELECT Max(OrderID)
FROM
(SELECT TOP 15 Orders.OrderID
FROM Orders
ORDER BY Orders.OrderID)) AND
(SELECT Max(OrderID)
FROM
(SELECT TOP 25 Orders.OrderID
FROM Orders
ORDER BY Orders.OrderID))
</code>
Tänk på följande:

Om antalet poster som retuneras är mindre än intervallet har du paserat intervallet. Om antalet poster är = 1 och intervallet > 1 är du utanför intervallet.


<code>
SELECT Orders.*
FROM Orders
WHERE Orders.OrderID BETWEEN
(SELECT Max(OrderID)
FROM
(SELECT TOP 15 Orders.OrderID
FROM Orders
ORDER BY Orders.OrderID)) AND
(SELECT Max(OrderID)
FROM
(SELECT TOP 25 Orders.OrderID
FROM Orders
ORDER BY Orders.OrderID))
</code>



Svara

Sv: Between istället för Top?

Postades av 2004-03-20 16:41:37 - Lars Berg

<citat>
Fast du kan ju med TOP, vilket till för SQL standarden
</citat>

TOP ingår inte i SQL-standarden. (Om det nu är det du avser med ovanstående.)


Svara

Sv: Between istället för Top?

Postades av 2004-03-20 17:03:52 - Andreas Hillqvist

Där fick jag lära mig något jag inte visste. Tackar för uplyssningen. ;o)


Svara

Nyligen

  • 17:54 Vegastars New Zealand
  • 16:56 Verde Casino Danmark
  • 13:54 Vegastars: Top Australian Online C
  • 21:28 Chicken Road Casino Game
  • 21:21 1xBet Promo Code 2025
  • 18:37 Remove the bumper in AUDI
  • 15:35 Chicken road crash game
  • 21:41 Automotive Services UK

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 973
27 965
271 783
3 395
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies