1
123123 2013-04-18 21:33:30 +08:00 1
能否大概提供一下你所写的SQL,如果没有加类似 TOP 1 或 LIMIT 1 并且符合条件的数据不止一条的话,那么只返回一行是很神奇的情况
|
2
yhy2008 2013-04-18 21:40:46 +08:00 1
SELECT ······FROM item LEFT JOIN info WHERE info.item_id = item.id
如果我没理解错应该是这样 |
3
sayori OP @123123 :
SELECT * FROM item LEFT JOIN `info` ON `info`.`item_id` = `item`.`id` WHERE `item`.`status` = '1' ORDER BY `item`.`id` DESC LIMIT 16 |
4
xhinking 2013-04-18 22:03:08 +08:00
表中的测试数据有多少条?
|
7
sayori OP @123123 悲剧,我再试了下发现确实返回多行。但每行一样ITEM数据都一样,不同的是info字段。这不是我想要的...
我想的是 比如用数组生成记录集时,有一个元素里是INFO的内容(当然这个元素的值也是数组..) 越搞越乱了....不管怎样先感谢各位。 |
8
123123 2013-04-18 22:45:28 +08:00
@sayori 没错,依照你的写法就是这样的返回值。如果你只想要 INFO 表的字段,那么 SELECT 后不要用 *,用 INFO.*
|
9
yhy2008 2013-04-19 09:59:23 +08:00
@sayori 不好意思写错了是用ON
是不是因为WHERE后的限定条件,如果item.status=1是唯一的话,它只会返回item一样的数据 |
10
Cadina 2013-04-19 17:03:09 +08:00
最反感字段前面还要加表名了
|
12
Narcissu5 2013-04-19 18:28:23 +08:00
提醒下楼主,数据库求助一般是把表的create 脚本放出来,比你的描述会给力得多。
|