帝国论坛帝国网站管理系统交流区模板/标签/插件共享交流SQL标签研究-多表查询 【本版专题贴子】  
 1/18     1 2 3 4 5 6 7 8 9 10 ›› ›|
主题:SQL标签研究-多表查询 [加入收藏夹]   

sooden
用户头衔:嘉宾

精华贴   :9
发贴数   :1551
经验值   :3822
注册时间:2006-01-02
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 1 楼]
SQL标签研究-多表查询
看到论坛里很多人都在问,如果能在用户投稿的文章后显示该用户的头像,如果能在 企业用户发布的信息 后显示该企业的其他信息等…

其实这些功能可以用SQL标签来实现的,现在我们来简单的谈谈SQL多表查询:

当然在做多表查询之间,必须要对帝国数据库中相关表的字段及其对应关系有大概的了解,不然是无法写出相应查询语句的。

废话少说,我们开始实践:

问题:在信息后显示发布该信息用户的 头像、QQ、MSN等相关信息

分析:
1、这样的查询应该会用到ecms_news表(其他模型表名自找),和存放用户的 真实姓名、头像、QQ、MSN等信息的enewsmemberadd表,共2张
2、标签模板中我们需要用的标签,一般的调用大概只需要[!--titleurl--] [!--title--] [!--newstime--] 这些,而[!--ftitle--] [!--smalltext--]  [!--writer--] [!--befrom--] [!--newstext--]
这些基本很少用到,而系统只能允许我们调用这些内置标签,所以需要在不用的标签内选择几个来使用,选择的数量是和你要调用的信息个数成正比的。

实例:
信息后增加所投稿用户的 真实姓名 头像 信息。
找到 真实姓名 头像 分别对应 enewsmemberadd表内truename和 userpic字段,我们挑选了 [!--writer--] [!--befrom--]标签来显示它们。
开始写SQL,两张表的是用USERID这个字段关联的

select a.*,b.truename as writer,b.userpic as befrom from phome_ecms_news as a LEFT JOIN phome_enewsmemberadd as b ON a.userid=b.userid order by newstime desc limit 100

红色部分定义排序方式,绿色部分定义查询记录数,自定义列表中可不定义。

标签模板记住要放 [!--writer--] [!--befrom--] 标签,不然 真实姓名、头像 是不会显示的。

如果需要可以分页的,可以用自定义列表来调用,其他的调用大家自己思考吧。

[该贴被修改 1 次,最后修改时间 2008-03-06 15:07:13 ]


帝国模板定制,功能开发等  http://ecmsjz.cn
不在线可QQ  8686588  留言,上线必回。
2008-03-06 11:42:48 已设置保密 顶部 回复 引用 报告 编辑 删除

甜品灯笼
用户头衔:进士

精华贴   :0
发贴数   :840
经验值   :2091
注册时间:2007-06-19
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 2 楼]

学习




2008-03-06 11:43:36 已设置保密 顶部 回复 引用 报告 编辑 删除

hicode
用户头衔:版主

精华贴   :1
发贴数   :21646
经验值   :47915
注册时间:2007-07-20
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 3 楼]





2008-03-06 11:44:10 已设置保密 顶部 回复 引用 报告 编辑 删除

wm_chief
用户头衔:管理员

精华贴   :21
发贴数   :48941
经验值   :114161
注册时间:2002-10-30
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 4 楼]

不错



[零基础入门教程] [模板制作教程] [采集使用教程]
2008-03-06 11:44:53 已设置保密 顶部 回复 引用 报告 编辑 删除

年华
用户头衔:书生

精华贴   :0
发贴数   :33
经验值   :92
注册时间:2008-02-12
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 5 楼]

强!高手




2008-03-06 11:46:02 已设置保密 顶部 回复 引用 报告 编辑 删除

tkf88
用户头衔:探花

精华贴   :0
发贴数   :8703
经验值   :22129
注册时间:2007-05-26
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 6 楼]

sooden是php高手




2008-03-06 12:16:22 已设置保密 顶部 回复 引用 报告 编辑 删除

luring
用户头衔:探花

精华贴   :3
发贴数   :2303
经验值   :7183
注册时间:2007-02-12
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 7 楼]

自定义列表



1
2008-03-06 13:45:02 已设置保密 顶部 回复 引用 报告 编辑 删除

xhbec
用户头衔:举人

精华贴   :0
发贴数   :448
经验值   :1143
注册时间:2007-05-29
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 8 楼]

不错




2008-03-06 14:20:32 已设置保密 顶部 回复 引用 报告 编辑 删除

禾火木风
用户头衔:嘉宾

精华贴   :11
发贴数   :5478
经验值   :14181
注册时间:2006-03-02
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 9 楼]

这贴收藏先



梦想设计 成就你的设计梦想
2008-03-06 14:53:43 已设置保密 顶部 回复 引用 报告 编辑 删除

wqp1126
用户头衔:书生

精华贴   :0
发贴数   :9
经验值   :42
注册时间:2007-12-25
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 10 楼]

顶,很好




2008-03-06 16:55:07 已设置保密 顶部 回复 引用 报告 编辑 删除
 1/18     1 2 3 4 5 6 7 8 9 10 ›› ›|

快速回复
内容

表情
使用EBB代码 使用smile代码 显示签名 自动分析url 自动分析img
     【进入高级模式】   (按 Ctrl+Enter 直接提交)
    顶部  加入收藏夹
关于帝国 | 广告服务 | 联系我们 | 法律声明 | 隐私条款 | 许可协议
Powered by: EBB Version 2.2.1