Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

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, 5260 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
Datenbanken
SQL Verständnisfrage (6)

Frage von PharIT zum Thema Datenbanken ...

LAN, WAN, Wireless
Verständnisfrage DMZ (11)

Frage von maddig zum Thema LAN, WAN, Wireless ...

Batch & Shell
gelöst Bat2exe converter funktioniert nicht (11)

Frage von tobias3355 zum Thema Batch & Shell ...

Windows 7
gelöst Verständnisfrage Batch-Rechte (9)

Frage von SarekHL zum Thema Windows 7 ...

Neue Wissensbeiträge
Windows Update

Novemberpatches und Nadeldrucker bereiten Kopfschmerzen

(15)

Tipp von MettGurke zum Thema Windows Update ...

Windows 10

Abhilfe für Abstürze von CDPUsersvc auf Win10 1607 und 2016 1607

(7)

Tipp von DerWoWusste zum Thema Windows 10 ...

RedHat, CentOS, Fedora

Fedora 27 ist verfügbar

Information von Frank zum Thema RedHat, CentOS, Fedora ...

Heiß diskutierte Inhalte
Router & Routing
Freigabe aus anderem Netz nicht erreichbar (21)

Frage von McLion zum Thema Router & Routing ...

Windows Server
Kennwort vergessen bei Hyper vserver 2012r (20)

Frage von jensgebken zum Thema Windows Server ...

Batch & Shell
Batch Programm verhalten bei shoutdown -p (19)

Frage von Michael-ITler zum Thema Batch & Shell ...

Festplatten, SSD, Raid
Raidcontroller funktioniert nur, wenn unter Legacy-Boot gestartet wird (13)

Frage von DerWoWusste zum Thema Festplatten, SSD, Raid ...