mysql - SELECT 多個資料表及多個欄位

 無名--小貞貞貞貞貞貞貞貞_微博_ 发布于 2022-11-05 20:05

我有個資料表叫做users_workexp 每位使用者能夠新增多筆上去
所以這個資料表若用戶有5筆紀錄
則id欄位會出現5個1 沒錯吧? 可多個
而users_profile和users資料表的欄位id 每個用戶都會只有一個

SELECT * FROM `users_profile` 
    JOIN `users` USING (id)
    JOIN `users_workexp` USING (id)
    WHERE `users_profile`.`username` LIKE '%{$key}%'
    OR `users_profile`.`name` LIKE '%{$key}%'
    OR `users_profile`.`city` LIKE '%{$key}%'
    OR `users_workexp`.`work_name` LIKE '%{$key}%'
    OR `users_workexp`.`work_bio` LIKE '%{$key}%'
    OR `users`.`email` LIKE '%{$key}%' 
    ");

輸出的結果我是印出 users_profile 的name欄位
假設A用戶新增5筆資料到users_workexp
搜尋後假設有符合$key的 他會印出"5個"A用戶的name
但我希望的是 假設id是一樣的 則只要出現"1個"就可以了

2 个回答
  • 请再详细描述下你的几个表的结构,有哪些字段,哪些主键和外键等,近可能详细吧,还有你想要实现的查询时什么?
    才好对症下药

    2022-11-12 01:55 回答
  • 1 对 1
    1 对 多
    多 对 多

    left join
    right join
    inner join
    outer join

    http://zhidao.baidu.com/quest...

    2022-11-12 01:55 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有