2010-09-22 17 views
17

In MS Access möchte ich eine neue Spalte in das zurückgegebene Ergebnis einer Select-Abfrage einfügen. Die neue Spalte hat denselben Wert für jede Zeile. Zum Beispiel meine wählen kehrt Spalten A, B und ich möchte C die neue Spalte durch die Auswahlabfrage erstellt werden:So erstellen Sie eine neue Spalte in einer Select-Abfrage

A B C 
---------- 
a1 b1 c 
a2 b2 c 
a3 b3 c 

Antwort

33
select A, B, 'c' as C 
from MyTable 
1

Es hängt davon ab, was Sie mit dieser Spalte tun wollte, z.B. hier ist ein Beispiel eine neue Spalte zu einem Re-Cord von Anhängen, die auf der Client-Seite aktualisiert werden können:

Sub MSDataShape_AddNewCol() 

    Dim rs As ADODB.Recordset 
    Set rs = CreateObject("ADODB.Recordset") 
    With rs 
    .ActiveConnection = _ 
    "Provider=MSDataShape;" & _ 
    "Data Provider=Microsoft.Jet.OLEDB.4.0;" & _ 
    "Data Source=C:\Tempo\New_Jet_DB.mdb" 
    .Source = _ 
    "SHAPE {" & _ 
    " SELECT ExistingField" & _ 
    " FROM ExistingTable" & _ 
    " ORDER BY ExistingField" & _ 
    "} APPEND NEW adNumeric(5, 4) AS NewField" 

    .LockType = adLockBatchOptimistic 

    .Open 

    Dim i As Long 
    For i = 0 To .RecordCount - 1 
     .Fields("NewField").Value = Round(.Fields("ExistingField").Value, 4) 
     .MoveNext 
    Next 

    rs.Save "C:\rs.xml", adPersistXML 

    End With 
End Sub 
2

SELECT Feld1, field2, ‚Beispiel‘ AS newfield FROM TABLE1 Diese eine Spalte hinzufügen wird "genannt newfield "zur Ausgabe, und sein Wert wird immer" Beispiel "sein.

Verwandte Themen