Announcement

Collapse
No announcement yet.

like %irgendwas% in einer IN(...) Bedingung

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • like %irgendwas% in einer IN(...) Bedingung

    Hallo zusammen,

    es gibt ja so etwas:

    Code:
    select * from Namen where name in ('willi','hans','harald');
    und so etwas

    Code:
    select * from Namen where name Like '%ha%'
    ich hätte aber gerne so etwas in der Art:

    Code:
    select * from Namen where name in ('%ha%','%wi%','%ar%');
    das Staement "'%ha%','%wi%','%ar%'" wird dynamisch zusammen gebaut
    d.h. so etwas wie:
    Code:
    name Like  '%ha%' 
    or name like '%wi%' 
    or name like '%ar%'
    ist mir bekannt,
    ich möchte aber lieber die in (...) Variante, wenn möglich ;-).


    geht so etwas und wenn ja wie?

    Danke für Eure Hilfe

  • #2
    Zumindest in Standard SQL nicht vorgesehen. Vielleicht hat irgendeine DB einen spezifischen Syntax dafür. Mir aber nicht bekannt.

    Aber auch wenn es den gibt sollte das keinen Unterschied zur OR Variante machen. Denn beides müßtest du ja dynamisch zusammensetzen wenn du dich denn an das ungeschriebene Gesetz hältst für Variablen SQL Parameter zu verwenden und nicht einfach Stringmanipulation verwendest.

    Weder Ausführungsgeschwindigkeit noch Codingaufwand sollten sich unterscheiden. Maximal gibt es einen Unterschied in der Lesbarkeit.

    Comment

    Working...
    X