猿问

从mysql数组中选择数据

在我的 MySQL 数据库中,我有一个数组列(文本类型)friend_array,其中的变量usernames用逗号 (,)


例如:user1 friend_array单元格中的值为:


prevert,

borges,

eliot,

wislawa,

derek,

hebert,

pushkin,

plath,

donnelly,

ahlberg,

ginsberg,

amiri,

rilke,

mckay,

aam,

wowen,

larkin,

michaux,

moliver,

dickinson,

rumi,

reverdy,

brecht,

tate,

cad,

cummings,

dianeb,

sexton,

redson,

pessoa,

transtromer,

shakespeare,

mistral,

sodergran,

bukowski,

auden,

tedhu,

ashton,

tomandrews,

gwallas,

updike,

ashbery,

jenkins,

rhass,

whitehead,

montale,

ritvo,

snyder,

kooser,

simic,

koertge,

nemerov,

aporter,

reichhold,

rduncan,

meretop,

kkoch,

strand,

kahf,

asha,

keats,

pinter,

santoka,

opaz,

breton,

schreiner,

bataille,

cedo,

galeano

现在如何在php中分别选择每个好友以查看好友列表而不重复


慕少森
浏览 257回答 2
2回答

holdtom

您应该创建一个如下所示的新表friend,例如:friend===============id_user | username与primary key上id_user1 + username,这种方式获得的所有的朋友user1,你可以这样做SELECT username FROM friend WHERE id_user = :id_user1;。如评论中所述,将此类字段与包含您需要选择的多个值的字符串一起使用是非常糟糕的做法。现在来回答这个问题,如果您设法获得friend_array值(如您所说的由逗号分隔的多个用户名的字符串),您可以执行以下操作:$data = explode(',', $your_friend_array_string);如果要删除重复项:$data_unique = array_unique($data);希望它有所帮助,但如果可能,请先更改存储数据的方式!
随时随地看视频慕课网APP
我要回答