Någon som kan säga mig varför inte beräkningen Int(Sum([TimeEntryLog].[OutTime] - [TimeEntryLog].[InTime]) * 1440)-[TimeEntryLog].[WorkTime] AS Flex inte funkar. Dumt svar kanske... Men varför har du Int() runt första delen av satsen Int(Sum([TimeEntryLog].[OutTime] - [TimeEntryLog].[InTime]) * 1440) och inte även runt [TimeEntryLog].[WorkTime]? Är det så att [WorkTime] inte sparas som ett tal kommer det ju att smälla om du inte även sätter det som en Int. Eller så har jag fel... ;-) Jag vet att det det är ett heltal som jag subtraherar med det är därför jag inte har Int(). Det funkar ju kanon om jag sätter in t.ex. 500 istället. För det första, vilken DBMS gäller det? För det andra, vad är det som inte fungerar? Får du ett fel, får du inte rätt svar eller vad? Jag sitter i Access.SQL beräkning
Ifall jag byter ut -[TimeEntryLog].[WorkTime] till ett tal så funkar det.
<code>
PARAMETERS UserN Text ( 255 );
SELECT [Users].[UserName], [Users].[FirstName], [Users].[LastName],
Min([TimeEntryLog].[InTime]) AS InTime,
Max([TimeEntryLog].[OutTime]) AS OutTime,
Int(Sum([TimeEntryLog].[OutTime] - [TimeEntryLog].[InTime]) * 1440) AS SumWorkedTime,
Int(Sum([TimeEntryLog].[OutTime] - [TimeEntryLog].[InTime]) * 1440)-[TimeEntryLog].[WorkTime] AS Flex
FROM Users LEFT JOIN TimeEntryLog ON [Users].[UserID] = [TimeEntryLog].[UserID]
WHERE [Users].[UserName] = [UserN]
GROUP BY
[Users].[UserName],
[Users].[FirstName],
[Users].[LastName],
Int([TimeEntryLog].[InTime]);
</code>Sv: SQL beräkning
typ :
Int(Sum([TimeEntryLog].[OutTime] - [TimeEntryLog].[InTime]) * 1440)-Int([TimeEntryLog].[WorkTime])Sv: SQL beräkning
Sv: SQL beräkning
Sv: SQL beräkning
När jag ska testa frågan så kan jag inte köra frågan får ett felmeddelande:
You tried to execute a query that does not include the specific expression "raden med uträkningen" as part of an aggregate function.
Kan man få ut nått av det. Det funkar ju när man skriver in ett tal istället.