Konvertieren von text-string in Decimal oder currency-Typ für ms-access-Abfrage in C#?
Möchte ich eine Abfrage ausführen, konvertiert den text aus dem Feld in eine Zahl oder Währung Feld.
Ich habe eine Abfrage wie :
SELECT * FROM qryProjectData ORDER BY prj.ProjectDisplayNo
Ich habe Daten wie.
362
362.01
362.2
362.3
362.4
362.5
362.6
362.7
362.8
362.9
362.10
362.11
Habe ich Sortieren, Aber das Ergebnis ist wie unten.
362
362.01
362.10
362.11
362.2
362.3
362.4
362.5
362.6
362.7
362.8
362.9
Problem ist, es ist das Textfeld, warum Sie nicht richtig Sortieren.
Brauchen, um es zu konvertieren in Dezimal oder Währung geben.
Mir helfen, wenn jemand ne Lösung.
Irgendeinem Grund Sie nicht haben es als dezimal-Feld in der Datenbank bereits?
Es gibt eine Menge von Daten... so, jetzt kann ich nicht ändern
Ändern Sie nun eine Weile dauern kann (aber sollte automatisierbar) - aber es sei denn, Sie planen, werfen Sie es Weg, nachdem diese Aufgabe, Sie werden die Vorteile in der langfristigen Perspektive.
Warum? Einige der Daten, die nicht wirklich numerisch? Wenn dem so ist, müssen Sie berücksichtigen, dass in Ihrer Bestellung... wie würden Sie erwarten, behandelt zu werden?
Wenn Sie Ihre Daten speichern corrrectly, all diese Probleme verschwinden vollständig. Ich würde nicht verschwenden meine Zeit auf workarounds.
Es gibt eine Menge von Daten... so, jetzt kann ich nicht ändern
Ändern Sie nun eine Weile dauern kann (aber sollte automatisierbar) - aber es sei denn, Sie planen, werfen Sie es Weg, nachdem diese Aufgabe, Sie werden die Vorteile in der langfristigen Perspektive.
Warum? Einige der Daten, die nicht wirklich numerisch? Wenn dem so ist, müssen Sie berücksichtigen, dass in Ihrer Bestellung... wie würden Sie erwarten, behandelt zu werden?
Wenn Sie Ihre Daten speichern corrrectly, all diese Probleme verschwinden vollständig. Ich würde nicht verschwenden meine Zeit auf workarounds.
InformationsquelleAutor aagnee | 2011-09-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wir können es tun, indem.......
Können Sie
CDec
,CSng
, undCDbl
um verdeckten text-Datentyp numeric, Währung, Zeichen-und Doppelzimmer..InformationsquelleAutor sikender
Können Sie die
CCur
Funktion wie diese:Beachten Sie, dass es auch
CDec
,CSng
, undCDbl
Funktionen, dass die Arbeit die gleiche Weise.Fehler, Wenn ich CCur(Wert) Direkt.
Nie einfach sagen, dass du hast ein Fehler - immer geben details von dem, was der Fehler ist.
SELECT * FROM qryProjectData, UM DURCH CCur(prj.ProjectDisplayNo)..... Fehler wie "Data Type mismatch in bestimmten Kriterien"... ich dadurch gelöst, dass problem...by geben
Ccur(val(prj.projectdisplayno))
Entweder säubern Sie Ihre Daten überprüfen oder auf numerische ersten: IIf(IsNumeric([prj].[ProjectDisplayNo]), CCur([prj].[ProjectDisplayNo]),NULL). Oder herauszufiltern, die nicht-numerische Werte: Where IsNumeric([prj].[ProjectDisplayNo]) = True.
InformationsquelleAutor Andrew Hare