Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Verständnisfrage zu Transact-SQL Befehl CONVERT

Frage Entwicklung Datenbanken

Mitglied: problemsolver

problemsolver (Level 2) - Jetzt verbinden

21.08.2008 um 14:22 Uhr, 5241 Aufrufe

Diese Frage betrifft die Konvertierung von einen Datentyp in den anderen und die damit verbundene Ausgabe in einem SQL Script unter MS-SQL Server 2005

Hallo zusammen,

ich hatte eine Frage zu einem Script, was uns von unserem Zeiterfassungsdienstleister zur Verfügung gestellt worden ist:
Genau genommen handelt es sich um diese beiden Zeilen Code:
01.
... 
02.
set @V_von_stunde = convert(varchar,convert(integer,(@V_bucheinz_von_zeit_min / 60))) 
03.
set @V_von_minute = convert(varchar,convert(integer, (@V_bucheinz_von_zeit_min - ((@V_bucheinz_von_zeit_min / 60)*60)))) 
04.
...
Zur Verständnis:
@V_von_stunde vom Typ varchar(02)
@V_von_minute vom Typ varchar(02)
@V_bucheinz_von_zeit_min vom Typ Integer


In der Variable @V_bucheinz_von_zeit_min ist definitiv jedesmal (geprüft) ein Wert enthalten. (Bespielsweise 481) Dieses repräsentiert die "Anstempelzeit" eines Mitarbeiters.

Logischerweise, und das ist meine Verständnisfrage, müsste allerdings in @V_von_minute immer der Wert "0" (s.o.) nach der Berechnung/ KOnvertierung enthalten sein, da für mich (x-((x/60)*60)) stets 0 (egal bei welchem x ) ergibt. Allerdings ist auch in dieser Variable DEFINITIV der richtige Wert enthalten!

Mit dem Bespiel oben: 481 bei @bucheinz_von_zeit_min ergibt sich für @V_von_stunde=8 und für @V_von_minute=1. (480 Minuten=8 Stunden...)

Wäre wirklich sehr dankbar für jede Hilfe bei der Klärung dieser Frage!!!

Gruß

Markus

@EDIT:
Problem gelöst! Microsoft hat unverständlicherweise den Sinn der Mathematik verdreht!

Laut MSDN Eintrag und mehrmaligem Lesen ist mir Folgendes bei der Division zwei integer Werte aufgefallen:
siehe http://msdn.microsoft.com/de-de/library/ms175009.aspx
<zitat>
Wenn ein ganzzahliger dividend-Wert durch einen ganzzahligen divisor-Wert geteilt wird, ist das Ergebnis ein ganzzahliger Wert, dessen Bruchstellen abgeschnitten werden.
<zitat>
In diesem Fall bedeutet das: 481:60 = 8,01.... Das ,01 wird abgeschnitten und es bleibt lediglich die 8 übrig, da zwei INTEGER Werte (Dividend und Divisor) durch einander geteilt werden.

Gruß

markus
Ähnliche Inhalte
TK-Netze & Geräte
gelöst Convert von TAPI auf CAPI gesucht (13)

Frage von StefanKittel zum Thema TK-Netze & Geräte ...

Monitoring
HP Monitoring - SQL auf localhost notwendig? (2)

Frage von hijacker99 zum Thema Monitoring ...

Heiß diskutierte Inhalte
Router & Routing
Tipps für Router (ca. 100 clients, VPN) (18)

Frage von oel-auge zum Thema Router & Routing ...

TK-Netze & Geräte
gelöst Convert von TAPI auf CAPI gesucht (13)

Frage von StefanKittel zum Thema TK-Netze & Geräte ...