Do not store the values as a string list.
Either use a collection and the MEMBER OF operator:
SQL Fiddle
Oracle 11g R2 Schema Setup:
CREATE TYPE IntList IS TABLE OF INTEGER
Query 1:
WITH TB1 ( ID ) AS (
     SELECT 1 FROM DUAL UNION ALL
     SELECT 2 FROM DUAL UNION ALL
     SELECT 3 FROM DUAL
),
TB2 ( names, idref ) AS (
   SELECT 'A', IntList( 1,2 ) FROM DUAL
)
SELECT t1.*,
       t2.Names
FROM   TB1 t1
       join tb2 t2
       on t1.id MEMBER OF t2.idref
Results:
| ID | NAMES |
|----|-------|
|  1 |     A |
|  2 |     A |
Or separate your list into its own table so that you can properly reference the foreign keys of TB1:
Query 2:
WITH TB1 ( ID ) AS (
     SELECT 1 FROM DUAL UNION ALL
     SELECT 2 FROM DUAL UNION ALL
     SELECT 3 FROM DUAL
),
TB2 ( names ) AS (
   SELECT 'A' FROM DUAL
),
TB3 ( names, idref ) AS (
   SELECT 'A', 1 FROM DUAL UNION ALL
   SELECT 'A', 2 FROM DUAL
)
SELECT t1.*,
       t2.Names
FROM   TB1 t1
       join tb3 t3
       on t1.id = t3.idref
       join tb2 t2
       on t2.names = t3.names
Results:
| ID | NAMES |
|----|-------|
|  1 |     A |
|  2 |     A |