Mysql, если условие в запросе не может получить имя таблицы из mysql_field_tablePhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Mysql, если условие в запросе не может получить имя таблицы из mysql_field_table

Сообщение Anonymous »

Этот запрос работает:

SELECT Article.id,
Article.post_time,
Article.post_locked,
Article.comments_locked, Article.title,
IF(CHAR_LENGTH(Article.content)>2000,
RPAD(LEFT(Article.content,2000),2003,'.'),
Article.content) as content,
Article.tags, Category.*,
User.id, User.user_name,
Comment.comment_count
FROM `articles` as `Article`
LEFT JOIN `categories` as `Category` ON `Article`.`category_id` = `Category`.`id`
LEFT JOIN `users` as `User` ON `Article`.`user_id` = `User`.`id`
LEFT OUTER JOIN (SELECT article_id, count(*) comment_count FROM `comments`) as `Comment` ON `Article`.id = `Comment`.article_id
WHERE '1'='1'
ORDER BY `Article`.`id` DESC


Но когда я просматриваю набор результатов, чтобы назначить имя таблицы вместе с полем, используя «mysql_field_table», «контент» возвращает пустое имя таблицы, в то время как все остальные есть правильная таблица:

Array (
[0] => Article
[1] => Article
[2] => Article
[3] => Article
[4] => Article
[5] =>
[6] => Article
[7] => Category
[8] => Category
[9] => User
[10] => User
[11] => Comment )


с помощью

for ($i = 0; $i < $numOfFields; ++$i) {
array_push($table,mysql_field_table($this->_result, $i));
array_push($field,mysql_field_name($this->_result, $i));
}


Кто-нибудь когда-нибудь пробовал это сделать? Есть решение? Я хочу возвращать меньше данных из моей БД в моем запросе. Или менее трудоемко (в MySQL, памяти, процессоре) просто выбрать весь контент и обрезать его через PHP? Я думал, что возвращать меньшее количество данных из БД было бы лучше.

Большое спасибо!!

Мир.

РЕДАКТИРОВАТЬ

чтобы прояснить, это результат, вы увидите, почему это не так чего я хочу:

Array (
[0] => Array (
[Article] => Array (
[id] => 8
[post_time] => 1278606312
[post_locked] => 0
[comments_locked] => 0
[title] => Article 8
[tags] => test )
[] => Array (
[content] => my content for Article )
[Category] => Array (
[id] => 2
[name] => cat2 )
[User] => Array (
[id] => 3
[user_name] => user3 )
[Comment] => Array (
[comment_count] => 1 )
)
[1] => Array (
[Article] => Array (
[id] => 7
etc...


Подробнее здесь: https://stackoverflow.com/questions/325 ... ield-table
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»