MS-Office-Forum

Zurück   MS-Office-Forum > Microsoft Access & Datenbanken > SQL
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads
Themen-Optionen Ansicht
Alt 10.07.2006, 10:39   #1
Andre.Heisig
MOF Koryphäe
MOF Koryphäe
Standard SQL - datetime zu genau, datum & zeit "abschneiden"

hi zusammen,

ich hab eine frage zum MS SQL Server 2003; bin mir der tatsache bewusst, dass das hier ein access-forum ist, ich versuch's trotzdem ...

ich bekomme von einer maschinendaten-datenbank (schickes wort ^^) ein datumsfeld, dass leider genauer aufzeichnet als sekunden, der entwickler sprach von datetime (?).

ich brauch für bestimmte datumsoperationen (vergleiche) den datums- und zeitwert dieses feldes auf sekundengenauigkeit (also DD.MM.JJJJ, hh:mm:ss), alles "dahinter" abgeschnitten, per view.

view anlegen ist kein thema, aber wie formatier ich dieses datumsfeld in einer MS SQL query? die mir aus access bekannten formate tun's nicht, die OLH hat mich bisher auch nicht weiter gebracht ... für die cracks hier doch 'ne kleinigkeit, oder?

gruß und danke!
andre.
Andre.Heisig ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 10.07.2006, 11:09   #2
Loewchen2005
MOF User
MOF User
Standard

Hi,

schau mal hier:
http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html
Loewchen2005 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 10.07.2006, 11:18   #3
Andre.Heisig
Threadstarter Threadstarter
MOF Koryphäe
MOF Koryphäe
Standard

öhm ... => ... "8.11. mysqldump — A Database Backup Program" ... ?

du falschen link erwischt?
ich blind und seh's nur nicht?
Andre.Heisig ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 10.07.2006, 11:28   #4
Loewchen2005
MOF User
MOF User
Standard

der Link hat nicht ganz funktioniert... sorry...

CREATE TABLE irgendwas(datum date(ddmmyyyy), ..)

oder

beim anlegen der tabelle den defaultwert auf DD-MM-YYYY setzen

oder hier mal gucken:
http://www.mysql.com/doc/en/DATETIME.html
http://www.mysql.com/doc/en/Date_and...functions.html
Loewchen2005 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 10.07.2006, 11:49   #5
Andre.Heisig
Threadstarter Threadstarter
MOF Koryphäe
MOF Koryphäe
Standard

>> CREATE TABLE irgendwas(datum date(ddmmyyyy), ..)
>> beim anlegen der tabelle den defaultwert auf DD-MM-YYYY setzen

nope, das geht leider nicht. ich hab das datumsformat auf datetime, die applikation lässt sich auch nur unter größerem aufwand ändern. deswegen wollte ich eine view erstellen, die mir das für diesen einen zweck zu genaue datums- und zeitfeld entsprechend "runterrechnet".
Andre.Heisig ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 10.07.2006, 12:00   #6
Arne Dieckmann
MOF Guru
MOF Guru
Standard

Bei Bernd Jungbluth (klik mich) findet man bestimmt etwas. Das Thema wird übrigens nun in den SQL-Teil verschoben.

__________________

Gruß, Arne

Links: FAQGrundlagenRelationale DatenbankenStephen LebansDBWiki
Tools: TabToWebSQL-FormatterCode ConverterRegEx testen
System: Win7 Pro 64bit, Office 20xx, div. MS-SQL Server 20xx, Firefox
Bitte keine Fragen per Mail/PN und als Neuling diese Anleitung (Code-Tags, Anhänge etc.) lesen.
Arne Dieckmann ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 10.07.2006, 12:10   #7
Loewchen2005
MOF User
MOF User
Standard

hmmm.... dann bin ich jetzt mit meinem latein am ende... habe hier jetzt leider nichts womit ich das ausprobieren kann... nur access... ;-)
Loewchen2005 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 10.07.2006, 12:36   #8
Andre.Heisig
Threadstarter Threadstarter
MOF Koryphäe
MOF Koryphäe
Standard

link 1 aus #4 zeigt eine funktion, die mir im prinzip reichen würde: "DATE_FORMAT(date,format)". leider finde ich das richtige MS SQL pendant nicht.

DATENAME('dd.mm.yyyy hh:mm:ss'; cStartzeit) geht nicht; wenn ich die (englische) doku dazu richtig verstehe, soll datename aber auch immer nur einen teil des datums auslesen.

CONVERT (datetime; cStartzeit; [dd.mm.yyyy hh:mm:ss]) bringts auch nicht; der teil [dd.mm.yyyy hh:mm:ss] wird bemeckert. in den "style values" der MS SQL Server OLH ist aber das von mir benötigte format eben genau nicht dabei. Kann ich das nicht benutzer-definiert ausgeben?

noch irgendwer eine idee?
Andre.Heisig ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 10.07.2006, 13:05   #9
letts
MOF Profi
MOF Profi
Standard

Hallo,

wird Dein Feld "cStartzeit" als Datum im View interpretiert? Sortiere einmal testweise auf- bzw. abstzeigend und gucke ob er dass macht.

Dass wäre eine aufsteigende Sortierung, wenn er dass Feld "cStartzeit" als Text interpretiert:
  1. 01.07.2006
  2. 11.08.2006
  3. 15.07.2006
  4. 20.07.2006

Dass wäre eine aufsteigende Sortierung, wenn er dass Feld "cStartzeit" als Datum interpretiert:
  1. 01.07.2006
  2. 15.07.2006
  3. 20.07.2006
  4. 11.08.2006

Für den Fall, dass das Feld als Text interpretiert wird schlage ich vor, dass Du dir die benötigten Informationen aus diesem Feld "extrahierst" und dann mit einem Cast(extrahiertesDatum AS Datetime) verpackst.
Zeige uns doch mal, wie ein Datensatz im Feld "cStartzeit" aussieht, dann kann man dir mit dem "auseinanderklamüsern" helfen.

__________________

Schöne Grüsse
Christian
WinXP + Access 2002 | Win2k3 SE | MS SQL Server 2k( SP4)
Kalenderwoche: Aktuelle KW nach DIN Norm
Dumme Gedanken hat jeder, aber der Weise verschweigt sie.

Profile for temptProvidence
letts ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 10.07.2006, 13:10   #10
Arne Dieckmann
MOF Guru
MOF Guru
Standard

Wozu verlinke ich eigentlich auf die TSQL-FAQ?

[Edit] Mir fällt gerade ein: Unter Hinweis - Ein paar hilfreiche Datumsfunktionen hat strausto diverse Sachen zusammengestellt, unter anderem "Datum ohne Uhrzeit" und "Extrahieren der Uhrzeit". [/Edit]

__________________

Gruß, Arne

Links: FAQGrundlagenRelationale DatenbankenStephen LebansDBWiki
Tools: TabToWebSQL-FormatterCode ConverterRegEx testen
System: Win7 Pro 64bit, Office 20xx, div. MS-SQL Server 20xx, Firefox
Bitte keine Fragen per Mail/PN und als Neuling diese Anleitung (Code-Tags, Anhänge etc.) lesen.

Geändert von Arne Dieckmann (10.07.2006 um 13:21 Uhr).
Arne Dieckmann ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 10.07.2006, 13:25   #11
Andre.Heisig
Threadstarter Threadstarter
MOF Koryphäe
MOF Koryphäe
Standard

@ letts:

das view statement zieht (mangels erfolg mit meiner formatiererei) bisher die original formate der felder, als die beiden relevanten als datetime(8).

Code:

SELECT     cID, cAnlage, cBetriebszustand, cStatus, cStartzeit, cEndzeit, cDauer, cBemerkung
FROM         dbo.tblAZEZustaendeHistorie
meine formatierunsgversuche weiter oben waren erfolglos;

Code:

CONVERT (datetime; LEFT (cStartzeit; 19))
kommt meinem ergebnisswunsch noch am nächsten, schneidet aber alle sekunden ab. ich brauch einen schnitt nach den sekunden (kein "runden"! dann haben wir mit unseren datums-rechnereien an anderer stelle probleme)


@arne: ich hab den link wohl nachgesehen. der erste punkt "A7.1. Datum ohne Zeit aus datetime-Feld" kommt meinem problem recht nahe, ich konnte die dort beschriebene funktion aber nicht auf meinen sachverhalt rüber ziehen, war noch dabei, damit zu probieren ... bissl geduld mit den SQL newbies
Andre.Heisig ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 10.07.2006, 13:57   #12
Andre.Heisig
Threadstarter Threadstarter
MOF Koryphäe
MOF Koryphäe
Standard

@arne // links von thorsten:

ok, ich kann mit
Code:

CONVERT(CHAR(8),(cStartzeit),108)
bzw.
Code:

CONVERT(CHAR(10),(cStartzeit),104)
datum und uhrzeit separieren, und geh davon aus, dass per länge des feldes die mich störenden millisekunden aus der uhrzeit raus sind.

jetzt müsste ich beide felder wieder zusammenfügen oder besser: beide abfragen in ein feld zusammen packen (da grübel ich grad drüber, die syntax is doch anders als in access ) und dann - viel wichtiger - das wieder als "echtes" datumsformat abspeichern. ich bin dran ...
Andre.Heisig ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:05 Uhr.


Partner und Co.
Access-Paradies -Alles rund um die Datenbank Microsoft Access -Code -Programme-Tools -Tipps   Kostenlose Tipps & Tricks, Downloads und Programme   www.kulpa-online.com - Tipps - Tricks - Tutorials - Meinungen - Downloads uvm...   vb@rchiv · Willkommen in der Welt der VB Programmierung   Access-Garhammer - Hier finden Sie jede Menge Beispiel-Datenbanken zu Access und mehr ...   mcseboard.de   Die Top Seite für Excel-VBA-Makros uvm.

Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

Copyright ©2000-2018 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günter Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.