0

I have this SQL tableName:

dataId | projectId | keywords
-------|-----------|--------
1      |     1     | keyword 1, keyword 2, keyword 3, keyword 4, keyword 1
2      |     2     | keyword 5, keyword 6, keyword 7

Is it possible to SELECT dataId, projectId, keywords FROM tableName and echo non-duplicates in dataId 1, project 1 field?

The ideal output would be:

keyword 1, keyword 2, keyword 3, keyword 4

Not

keyword 1, keyword 2, keyword 3, keyword 4, keyword 1

Sami Kuhmonen
  • 30,146
  • 9
  • 61
  • 74

1 Answers1

0

To de-duplicate a comma-separated list of string, you can do this:

$keywords = 'keyword 1, keyword 2, keyword 3, keyword 4, keyword 1';
$dedup = implode(', ', array_unique(array_map('trim', explode(',', $keywords))));
echo $dedup;

Result:

keyword 1, keyword 2, keyword 3, keyword 4

You should probably do this before inserting to your database for performance. But it'll also work afterwards.

Koala Yeung
  • 7,475
  • 3
  • 30
  • 50