Kom ihåg mig?
Home Menu

Menu


mySQL - join eller group problem

 
Ämnesverktyg Visningsalternativ
Oläst 2011-12-24, 18:05 #1
Conny Westh Conny Westh är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2005
Inlägg: 5 166
Conny Westh Conny Westh är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2005
Inlägg: 5 166
Gör man om det hela till StoredProcedures så blir det lite snabbare och enklare att hantera (man kan då ange valfritt datum när man vill veta aktuell prislista, vilket gör att man kan hantera framtida prisförändringar):

Kod:
CREATE PROCEDURE [dbo].[SenasteProduktPrisAlt1]
	-- Add the parameters for the stored procedure here
	@Datum datetime = GetDate
AS
BEGIN
	-- SET NOCOUNT ON added to prevent extra result sets from
	-- interfering with SELECT statements.
	SET NOCOUNT ON;

	--declare @datum datetime
	--set @datum = GETDATE()
	SELECT     PrisID, Artikelnummer, pris, prisdatum
	FROM         dbo.ProduktPris AS pp1
	WHERE     PrisDatum <= @Datum 
	AND 
	(
		prisdatum =
		(
			SELECT DISTINCT MAX(prisdatum) AS prisdatum
			FROM          dbo.ProduktPris AS pp2
			WHERE      (Artikelnummer = pp1.Artikelnummer)
		)
	)
END
GO

-- Tester
declare @datum datetime
set @datum = GETDATE()
exec [dbo].[SenasteProduktPrisAlt1] @datum;

exec [dbo].[SenasteProduktPrisAlt1] '2011-12-15 23:59:59';
exec [dbo].[SenasteProduktPrisAlt1] '2011-12-18';
exec [dbo].[SenasteProduktPrisAlt1] '2011-12-18 23:59:59';
exec [dbo].[SenasteProduktPrisAlt1] '2011-12-21 23:59:59';
exec [dbo].[SenasteProduktPrisAlt1] '2011-12-24 23:59:59';

Senast redigerad av Conny Westh den 2011-12-24 klockan 18:18
Conny Westh är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 08:41.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017