簡體   English   中英

MySQL函數替換列中逗號分隔的值

[英]MySQL function to replace comma separated values in column

我有一列用逗號分隔的值(ids)。 我需要為它們更改相應的值。 我需要MySQL函數來替換。

這是我的桌子1。

id             name
-------------------
1              Lara

2              Smith

3              Antony

4              Ken

這是我的桌子2

id            friends
---------------------

1             2,3

2             1,2

3             1,3

4             1,4,3,2

當我查詢table2時,我的MySQL函數(get_names)應該返回逗號分隔的名稱,而不是name'ids。

例如

當我這樣叫

select get_names('1,2,3,4','Lara,Smith,Antony,Ken','3,1'); 

它應該返回Antony,Lara

這里

我的

1st parameter is - total user ids with comma separated order

2nd parameter is - total user name with comma separated order (same order like user ids)

3rd parameter is - any no. of user ids with comma separated any order

請幫我。

我建議更改表2,以免出現逗號分隔的值:

id            friends
---------------------

1             2
1             3

2             1
2             2

3             1
3             3

4             1
4             4
4             3
4             2

在這種情況下,您也必須更改MySQL函數,但是通過簡單的連接檢索值將更加容易。

mysql中逗號分隔的值違反了第一個NF

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM