В общем получаю информацию о постах(posts и users) В обоих таблицах присутствует колонка id Всё перевожу в ассоциативный массив,выводит только id поста,но нужно ещё и id пользователя Массив $rows Помогите пожалуйста
Код (PHP): SELECT * FROM soc_posts p LEFT JOIN soc_groups g ON($id=g.id) LEFT JOIN soc_users u ON(p.author=u.id) WHERE p.wall_id='$id' AND p.type>'0' ORDER BY p.id DESC LIMIT ".$offset.",".$limit Нужно что бы в массиве различались id юзера и поста Добавлено спустя 4 минуты 19 секунд: Блин,я тут понял,что у меня 3 одинаковые колонки,в soc_groups тоже есть id Добавлено спустя 33 минуты 31 секунду: Я сделал,спасибо)))Понял,для чего нужны алиасы PHP, JavaScript, SQL и другой код пишите внутри тегов Код ( (Unknown Language)): [b]php][/b]Тут код[b][/[/b][b]code][/b][/color]
совет на будущее: давать осмысленные имена переменным, классам, таблицам, полям и вообще всему у чего должен быть смысл. а именам полей вообще давать префикс с именем таблицы. например если есть таблица юзеров users то первичный ключ у нее - user_id. у таблицы постов posts - post_id. а поле автора поста (в таблице постов) - post_user_id. примерно так. убирает огромное количество неоднозначностей.
Ganzal, ну ты молодец конешь, плохого не посоветовал ((((((((((( А если у таблицы длинное название?? (;
а зачем делать длинное название, даже если и так? разве нельзя грамотно сократить, чтобы всё ещё оставалось ясно?)
бывают случаи, когда просто это не возможно, так как, только длинным названием можно описать сущность ( например, information_schema, performance_schema... и т.п...
p@R@dox 55RU как ты догадываешься это была общая рекомендация. всегда есть исключения и согласись их тоже нужно оформить так чтоб и не потерять логику и не нарушить читаемость.
Я всегда пишу строго id и проблем не знаю. Просто иногда можно 1. применить волшебный AS, 2. использовать то поле, по которому джоинишь. Вот и всё.
igordata, тоже интересный короткий вариант ( Добавлено спустя 9 минут 43 секунды: Ganzal, всегда можно придумать правильный короткий вариант. Зависит только от фантазии разработчика ((
igordata, да, покажи на примере банальной задачи посты и теги выборку всех тегов. тебя таблица постов с полем айди, таблица тегов с полем айди, таблица связей пост-тег с аж двумя полями айди. так?
не понял. я не знаю, как выбрать одним запросом и посты, и их теги. Я даже не знаю, зачем так делать.
ну можно тогда рассмотреть ситуацию, когда я хочу выбрать юзеров и название их группы, при условии, что один юзер - одна группа. Допустим, у меня есть таблица групп, с id, и таблица юзеров, где есть поле group, в которое вписан id из таблицы групп. Соотв я джоиню эти две таблицы, выбираю имя юзера, номер юзера id, потом номер группы у меня живёт в поле group, и я выбираю только название группы из таблицы групп, и мне не нужен id из таблицы групп просто потому что я джоиню по user.group = group.id и номер группы юзера у меня уже и так есть в поле user.group. чучхе? Добавлено спустя 26 секунд: все теги поста или все посты тега я выберу отдельным запросом