MySQL中应该多表连接查询一次取数据库还是多次查询取数据?具体的case在下面。
三个表的字段如下:
webcast_cast表:id,organizerId,title,startDate,endDate,number,date等
webcast_organizer表:id,organizerName,organizerLogo等
webcast_theme表:id,castId,themeName,speakerName,popularity等
三个表之间的关系是:
webcast_cast表与webcast_organizer表之间是一对一的关系。
webcast_cast表与webcast_theme表之间是一对多的关系。
需求是:
取出webcast_cast的前10条数据(按照date时间倒序排序),同时能够关联的拿出webcast_organizer表和webcast_theme表中的相关数据。
目前我的SQL语句如下:
1.先拿出前10条webcast_cast和webcast_organizer表关联的数据。
SELECT 'a.id','a.title','a.startDate','a.endDate','a.number','a.date','b.organizerName','b.organizerLogo'WHERE a.organizersId=b.id ORDER a.date DESC LIMIT 0,10
2.对上面拿出的数据做foreach循环,然后分别拿出每条webcast_cast数据所对应的webcast_theme数据【可能存在多条】。
问题就在这里:10条webcast_cast数据相当于要执行10次SQL的读取操作【感觉这样非常不好】。
我的想法是:能不能采用多表连接的方式用一条SQL语句就能够实现了????
请教高手。谢谢。