CONCAT

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: CONCAT

Re: CONCAT

von pmoegenb » Do, 12.06.2014 12:40

ClaLu hat geschrieben:SQL ist mir nicht sehr vertraut -
IBM hat doch hervorragende Handbücher, die m. W. mit der AS/400, bzw. iSeries mitgeliefert werden.
ClaLu hat geschrieben: gilt ifnull sowohl bei numerischen wie auch bei character-Felder und bedeutet es sowohl im einen wie auch im anderen Fall eine Abfrage auf "leer"?
So ist es. Wenn Du z. B. Datensätze, die ein einer Spalte leere Inhalte aufweisen, ausschließen möchtest, lautet die Syntax:
SELECT *
FROM Tabelle1
WHERE Feld1 Is Null
Dokumentationen für Standard-SQL findest Du z. B. unter:

http://www.sql-und-xml.de/sql-tutorial/
http://sql.1keydata.com/de/

Darüber hinaus hat jeder Datenbank-Hersteller seine eigenen Schmankerl.

Re: CONCAT

von ClaLu » Do, 12.06.2014 12:26

Hi
Ganz lieben Dank für die schnellen Antworten.
Mit ifnull habe ich es noch nicht probiert, aber mit CASE habe ich es nach einigem Üben hinbekommen.
Ich werde es später auch noch mit ifnull probieren, habe aber noch eine Frage:
SQL ist mir nicht sehr vertraut - gilt ifnull sowohl bei numerischen wie auch bei character-Felder und bedeutet es sowohl im einen wie auch im anderen Fall eine Abfrage auf "leer"?
Schöne Grüsse!

Re: CONCAT

von acco » Do, 12.06.2014 11:27

Hallo ClaLu,

in Base bei eingebetteter Datenbank funktioniert es so:

Code: Alles auswählen

SELECT CONCAT( ifnull( "Fest1", 'keinFN' ), ifnull( "Mobil1", 'keinMobil' ) ) FROM "Tab_Tel"
oder so

Code: Alles auswählen

SELECT ifnull( "Fest1", 'keinFN' ) || ' ' || ifnull( "Mobil1", 'keinMobil' ) FROM "Tab_Tel"
wobei Du die ifnull-Bedingung frei formulieren kannst, es muß also nicht "keinFN" heißen, zwei Hochkommata geht beispielsweise auch.
Statt "Tab_Tel" nimm Deinen Tabellennamen.

Ob das bei der IBM AS 400 so klappt, weiß ich nicht, wirst Du aber rausfinden.

Gruß

acco

Re: CONCAT

von pmoegenb » Do, 12.06.2014 10:47

Schau Dir die Syntax von CASE WHEN für DB400 an.

CONCAT

von ClaLu » Do, 12.06.2014 09:20

Hi,
Es geht um eine Abfrage. Es gibt das Feld "FEST1" mit der Festnetz-Telefonnummer und das Feld "MOBIL1" mit der Mobiltelefonnummer.
Diese möchte ich in einem neuen Feld zusammenfassen. Probiert habe ich:
CONCAT( "FEST1", "MOBIL1" ) AS "Telefon"
und
"FEST1" || "MOBIL1" AS "Telefon"
Im Prinzip geht es mit beiden.
Das Problem:
Ich bekomme nur dann ein Ergebnis in der Spalte "Telefon" angezeigt, wenn beide Ausgangsfelder gefüllt sind. Wenn nur das Feld "FEST1" gefüllt ist, bleibt die Spalte "Telefon" leer.
Die Datenquelle ist eine ODBC-Datenquelle auf eine IBM-AS400-Datenbank.
Hat jemand eine Idee?
Vielen Dank + Gruss, ClaLu

Nach oben