2016-07-19 14 views
-1

Ich muss aus mehreren Tabellen auswählen. In einer von zwei Tabellen benutze ich Cast. So ist mein Code wie folgt aussehen:Cast mit mehreren Select

insert into TEST (id,name) (SELECT (MAX(id) + 1), (select 'NEW-1-'+CAST((MAX(id) + 1) AS VARCHAR(10)) from test) 

Ich erhalte eine Fehlermeldung mit falscher Syntax

+0

Irgendwelche Vorschläge? – user6453809

+0

Was genau betrachte ich? Versuchen Sie, das Maximum (mit einer Addition von 1) zu etwas namens new-1 in eine Zeichenfolge hinzuzufügen? Wenn das alles ist, was Sie tun, dann fehlt Ihnen noch mehr Code. Möchten Sie dieses neue Ding einfügen, das Sie erstellt haben? Wenn max beispielsweise 5 ist, dann ist die rechte Seite 6 und du hättest "New-1-6". Versuchen Sie, dies in eine Spalte einzufügen? Wenn ja, wie heißt die Spalte und die Tabelle, in die Sie sie einfügen? – CodyMR

+0

Ich fand, was ich suchte, ich brauche nur ein kleines Detail hinzuzufügen. Dies ist der Code, nach dem ich gesucht habe: wähle 'New-1 -' + CAST ((MAX (ID) + 1) AS VARCHAR (10)). Die Sache ist, wenn ich mehrere auswählen möchte? Ich habe das mit Syntaxfehler versucht. (SELECT (MAX (ID) + 1), (wählen Sie 'Neu-1 -' + CAST ((MAX (ID) + 1) AS VARCHAR (10)) aus Test – user6453809

Antwort

1

so aus meinem Verständnis das Stück Code, den Sie haben ...

select 'New-1-'+CAST((MAX(ID) + 1) AS VARCHAR(10)) 

zur Zeit arbeitet? Aber Sie haben Probleme mit ...

(SELECT (MAX(id) + 1), (select 'new-1-'+CAST((MAX(id) + 1) AS VARCHAR(10)) from test 

Also das Problem, das Sie haben, ist mit mehreren Auswahlen. Sie führen keine Mehrfachauswahl durch. Sie können nur halten sie mit Kommas in-between wie so ...

SELECT (MAX(id) + 1), 'new-1-'+CAST((MAX(id) + 1) AS VARCHAR(10)) from test 

Dies sollte die Eingabe sein, was Sie suchen. Bitte kommentieren Sie diese Antwort, wenn Sie Fragen haben und versuchen, meine Follow-up-Fragen durch Ihre ursprüngliche Frage zu beantworten :)

+0

Vielen Dank Bro es funktioniert! Nur noch eine letzte Frage. Ist das wirklich so einfach für dich? Weil ich verbringen mindestens einen Tag versuchen, eine Antwort zu finden ...:) Danke nochmal! – user6453809

+1

@ user6453809 haha ​​mach dir keine Sorgen, irgendwann wirst du darauf zurückblicken und denken, wie viel du gewachsen bist. Ich hatte letztes Semester ein Projekt für das College und ich habe viel mit SQL gemacht. Ich wusste bis dahin nicht viel darüber. Es war ziemlich mürrisch. Das war die geringste meiner Sorgen :). Du wirst dahin kommen. Nur dadurch wird es einfacher. Schöne Sache über dieses Feld. Muss nicht wirklich lernen. Muss nur tun. – CodyMR