簡體   English   中英

通過另一個表搜索一個mysql表

[英]Search a mysql table through another table

如果您能給我解決問題的方法或想法,我將不勝感激:

我有一個表,其中包含我的用戶信息,例如姓名,電子郵件.....等。 行的ID像1,2,3(自動遞增)。

另一個用於檢查第一個成員是否是第二個成員朋友的表,如下所示:mem1 id,mem2 id,添加日期,行的id ...等等

而我想制作一個常規的HTML表單,那就是讓他的用戶搜索他的朋友。 就像傑克鍵入他的朋友約翰的名字一樣,他會根據第二張表了解約翰是否是他的朋友。

如果有人可以幫助我,我會非常高興,我真的很高興。

SELECT users.name as friend_name, friends.friend_id as friend_id FROM 
users, (SELECT mem1 as friend_id FROM friends WHERE friends.mem1=$userid   UNION SELECT mem2 as friend_id FROM friends WHERE friends.mem2=$userid) as user_friends 
WHERE user_friends.friend_id=users.id

此查詢應從表中獲取所有朋友的姓名和用戶ID。 只需將結果呈現為json並使用ajax即可獲取。 在jQuery UI http://jqueryui.com/上查看自動完成功能

使用ajax:當用戶輸入第一個值時,對php腳本進行異步調用,該腳本將在數據庫中搜索數據並返回結果。

這可以通過JOIN解決:

SELECT m2.name FROM member_relations AS f
JOIN members AS m1 ON m1.id = f.mem1
JOIN members AS m2 ON m2.id = f.mem2
WHERE m1.name = 'Jack' AND m2.name = 'John'

假設您已經知道當前用戶的ID,則可以簡化它:

SELECT m.name FROM member_relations AS f
JOIN members AS m ON m.id = f.mem2
WHERE f.mem1 = {ID} AND m.name = 'John'

暫無
暫無

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

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