Lastige query?
- Is die postgreSQL sneller dan MYSQL?
- Is postgreSQL gratis?
- Kost het veel tijd om een groot systeem om te zetten van MYSQL naar postgreSQL?
- Is het beheer net zo "eenvoudig" als met bijvoorbeeld phpmyadmin?
- PostgreSQL is inderdaad sneller dan MySQL (ff op pgFrank wachten voor de juiste link), vooral als je zijn volle kracht en functies benut is het een zeer mooi database systeem.
- PostgreSQL is gratis, veel hosters maken helaas de overstap nog niet, omdat het qua systeem wat meer zou vragen dan MySQL (ook logisch met alle extra's tov MySQL)
- Het omzetten op zich kost misschien niet veel tijd, maar als je het om wil zetten naar een systeem dat de opties ten volle optimaal benut zal je heel veel moeten veranderen.
- Het beheer zelf is net zo eenvoudig. Klik en lees Er is gewoon een pgsql tegenhanger van PHPmyAdmin
Ik krijg zonder de twee group by de session_id waar page_id 21 meerdere keren voor komt meer keer, deze wil ik maar 1 keer.
SELECT session_id, page_id
FROM mct_paths
WHERE page_id =21
AND session_id
IN (
SELECT session_id
FROM mct_paths
GROUP BY session_id
HAVING COUNT( session_id ) >1
)
GROUP BY session_id
Coen schreef op 18.12.2007 17:30:
Ok, goed om te weten, dan heb ik een aantal vragen.
- Is die postgreSQL sneller dan MYSQL?
- Is postgreSQL gratis?
- Kost het veel tijd om een groot systeem om te zetten van MYSQL naar postgreSQL?
- Is het beheer net zo "eenvoudig" als met bijvoorbeeld phpmyadmin?
- Is die postgreSQL sneller dan MYSQL?
- Is postgreSQL gratis?
- Kost het veel tijd om een groot systeem om te zetten van MYSQL naar postgreSQL?
- Is het beheer net zo "eenvoudig" als met bijvoorbeeld phpmyadmin?
1) Ja, veel sneller in een heel aantal tests uitgevoerd door Tweakers.net. Hierbij waren de pgSQL-database en de queries nog niet eens geoptimaliseerd. Een andere database kan overigens een ander beeld geven, maar verwacht geen hele andere resultaten.
2) Ja, zelfs ietsjes meer gratis dan MySQL. pgSQL is altijd gratis, MySQL niet.
3) Wanneer jij altijd correcte SQL hebt geschreven, dan gaat overzetten vrij snel. Blijkt ineens dat jouw code vol bugs zit, dan zul je die met pgSQL wel moeten oplossen, pgSQL accepteert geen foute queries. MySQL helaas wel... Maar dit zegt meer over MySQL dan over pgSQL.
4) Met PMA kun je niet fatsoenlijk een database beheren, met PGA kun je dat evenmin verwachten. Het blijven PHP-scriptjes. Je kunt wel vergelijkbare functionaliteit verwachten. Voor écht beheer ga je met échte tools aan de slag, bv. pgAdmin3 (gratis, diverse OS-en) of EMS SQLManager for pgSQL (Lite is gratis, Windows only). Daarnaast is het een goed plan om de SQL goed te beheren, maakt beheer een stuk eenvoudiger.
5) pgSQL draait op vrijwel alles dat lijkt op een OS.
Alleen ik had nog een vraag over die query, misschien dat je daar ook een goed antwoord op hebt. Die dubbele GROUP BY, mag dat? Het ziet er beetje vaag uit, maar lijkt wel te werken.
SELECT session_id, page_id
FROM mct_paths
WHERE page_id =21
AND session_id
IN (
SELECT session_id
FROM mct_paths
GROUP BY session_id
HAVING COUNT( session_id ) >1
)
GROUP BY session_id
Offtopic: Dit is dus een voorbeeld van een foute query die MySQL accepteert (tenzij je full_group_by-mode instelt) en die pgSQL direct afkeurt.