LIMIT in pg
Heey,
Korte vraag:
Ik probeer limit te doen in Postgresql
Maar dan krijg ik de volgende error:
Naar mijn weten hoort deze wel gewoon te werken in mysql maar die heeft andere regels.
Weet iemand hoe ik dit werkend kan krijgen in Postgresql.
Heb al aantal dingen geprobeerd maar wil maar niet lukken
Groeten, Vincent
Korte vraag:
Ik probeer limit te doen in Postgresql
Maar dan krijg ik de volgende error:
Naar mijn weten hoort deze wel gewoon te werken in mysql maar die heeft andere regels.
Weet iemand hoe ik dit werkend kan krijgen in Postgresql.
Heb al aantal dingen geprobeerd maar wil maar niet lukken
Groeten, Vincent
Probeer de HINT eens.
Ik heb dat nog nooit gebruikt die OFFSET's dus is het me daarmee ook niet gelukt zoals ik al zei: "Heb al aantal dingen geprobeerd maar wil maar niet lukken"
dus "LIMIT 10 OFFSET 0"?
huh wtf gerben, mokerz makkelijk en ik zag em niet O.o
Iig bedankt =)
Iig bedankt =)
Limit werkt iets anders in postgresql,
wat je probeert in sql daar is de eerste 10 resultaten weer te geven.
in postgresql zou je dat doen door LIMIT 10 OFFSET 0
voor meer informatie over de manier waarop LIMIT en OFFSET gebruikt moet worden kun je hier terecht
edit: Ik ben zo erg veel langzamer dan iedereen hier, afijn ;)
wat je probeert in sql daar is de eerste 10 resultaten weer te geven.
in postgresql zou je dat doen door LIMIT 10 OFFSET 0
voor meer informatie over de manier waarop LIMIT en OFFSET gebruikt moet worden kun je hier terecht
edit: Ik ben zo erg veel langzamer dan iedereen hier, afijn ;)
Gewijzigd op 01/01/1970 01:00:00 door Thijs Damen
Een flinke RTFM is hier wel op zijn plaats: RTFM!!
En als je het daar echt niet kunt vinden wijst google je nog de weg
Het is overigens aan te raden deze manier ook aan te leren en te gebruiken in MySQL. Het is gewoon volgens de standaard om LIMIT en OFFSET daarvoor te gebruiken.
Alleen MySQL accepteerd de comma notatie ook nog. Je kan het beste volgens de echte SQL standaarden werken, waarmee je zoveel mogelijk fouten voorkomt bij het overstappen naar een ander type database.
Alleen MySQL accepteerd de comma notatie ook nog. Je kan het beste volgens de echte SQL standaarden werken, waarmee je zoveel mogelijk fouten voorkomt bij het overstappen naar een ander type database.
En daar ging Robert er met mijn 2 cents vandoor!
;)
Ps. Leer SQL met een database die zich (beter) aan de standaarden houdt. Ik zal geen namen noemen, maar versie 8.3 van deze niet nader genoemde database is net uitgebracht.
;)
Ps. Leer SQL met een database die zich (beter) aan de standaarden houdt. Ik zal geen namen noemen, maar versie 8.3 van deze niet nader genoemde database is net uitgebracht.
Tjah Frank, het viel me tegen dat jij daar nog niet over was begonnen. Maargoed..
Dwing als je MYSQL toch wil gebruiken deze op zijn minst in de strict modus:
KLIK
Dwing als je MYSQL toch wil gebruiken deze op zijn minst in de strict modus:
KLIK
Mysql heeft andere standaarden maar accepteer Mysql ook de echte mysql standaard? Dus de dingen die je gebruikt zoals bij postgresql? De time/date fucnties etc?
Andere standaarden... Poep is inderdaad ook een standaard en daar zit standaard ook een bijzonder luchtje aan. (ik hou het netjes ;) ) Met MySQL gaat dat net zo, er is een `standaard` MySQL-dialect (met een bijzonder luchtje) en je hebt de ANSI-standaard. Laat andere databases nu ook de ANSI-standaard gebruiken (niet helemaal 100%, maar het komt in de buurt), dan is het dus wel zo handig om je aan de standaard te houden.
Vandaar dat het zo klote is dat menig prutser zijn SQL-avonturen begint met MySQL, nadat je jezelf hebt opgewerkt tot MySQL-kenner, ken je nog steeds geen SQL! Begin je bv. met PostgreSQL, dan leer je de ANSI-standaard met wat pgSQL-uitzonderingen en kun je zo met een andere database aan de slag.
Mocht je een held zijn en toch SQL willen leren met MySQL, stel hem dan in op ANSI-SQL, dan lijkt het tenminste nog ergens op. Doe je dat niet, vergeet dan het SQL-dialect dat je met MySQL hebt geleerd, dat gaat echt niet werken op een andere database.
Voor de juiste functienamen in pgSQL pak je even de handleiding er bij, die hoor je altijd voor je neus te hebben. In hoofdstuk 9 worden alle functies besproken, ook de datum- en tijdfuncties.
Vandaar dat het zo klote is dat menig prutser zijn SQL-avonturen begint met MySQL, nadat je jezelf hebt opgewerkt tot MySQL-kenner, ken je nog steeds geen SQL! Begin je bv. met PostgreSQL, dan leer je de ANSI-standaard met wat pgSQL-uitzonderingen en kun je zo met een andere database aan de slag.
Mocht je een held zijn en toch SQL willen leren met MySQL, stel hem dan in op ANSI-SQL, dan lijkt het tenminste nog ergens op. Doe je dat niet, vergeet dan het SQL-dialect dat je met MySQL hebt geleerd, dat gaat echt niet werken op een andere database.
Voor de juiste functienamen in pgSQL pak je even de handleiding er bij, die hoor je altijd voor je neus te hebben. In hoofdstuk 9 worden alle functies besproken, ook de datum- en tijdfuncties.
Ook wel mooi hoe het in de handleiding van mysql staat:
Heeft alleen PostgreSQL dan deze notatie? Lijkt mij niet als pgSQL zich wel houd aan de ANI standaard...
Quote:
For compatibility with PostgreSQL, MySQL also supports the LIMIT row_count OFFSET offset syntax.
Heeft alleen PostgreSQL dan deze notatie? Lijkt mij niet als pgSQL zich wel houd aan de ANI standaard...
@Crispijn: Ook pgSQL houdt zich niet 100% aan de ANSI-standaarden, maar komt daar wel dicht in de buurt. pgSQL-dialect (laat ik het zo even noemen) wordt ook beter ondersteund door andere databases, bv. Oracle en MySQL (zie het voorbeeld van de OFFSET).
pgSQL is voor vele databases een voorbeeld en dankzij de open source zijn de goede ideeen van pgSQL redelijk eenvoudig te implementeren.
pgSQL is voor vele databases een voorbeeld en dankzij de open source zijn de goede ideeen van pgSQL redelijk eenvoudig te implementeren.




