SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 22.01.2008 08:48:45

Никита
Завсегдатай
Откуда: Тюмень
Зарегистрирован: 15.11.2007
Сообщений: 73

Получение названий столбцов с конструкцией INFORMATION_SCHEMA

Добрый день)Вчера вы мне помогали разобраться с конструкцией INFORMATION_SCHEMA.Но после этого у меня возник еще один вопрос,ответ на который я нигде не смог найти.Подскажите,пожалуйста,как мне получить название каждого столбца,если у меня имеется конструкция INFORMATION_SCHEMA:
$query = "SELECT column_name FROM `INFORMATION_SCHEMA`.`COLUMNS` WHERE table_schema='structura' AND table_name='struc' AND column_name LIKE '%-3'";
Мне необходимо получить все названия столбцов,которые удовлетворяют условию column_name LIKE '%-3' и записать все эти названия в переменные,чтобы потом при помощи запрса получить информацрию из каждого столбца.

Неактивен

 

#2 22.01.2008 11:32:37

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5827

Re: Получение названий столбцов с конструкцией INFORMATION_SCHEMA

Не понял суть проблемы.
Приведенный Вами запрос как раз и выберет все имена столбцов из таблицы `structura`.`struct`, оканчивающиеся на '-3'.
Далее Вы можете обрабатывать полученный результат средствами php - присваивать названия столбцов разным переменным или одной в виде списка, чтобы сформировать след. запрос.

Неактивен

 

#3 22.01.2008 11:47:18

Никита
Завсегдатай
Откуда: Тюмень
Зарегистрирован: 15.11.2007
Сообщений: 73

Re: Получение названий столбцов с конструкцией INFORMATION_SCHEMA

Но как мне присвоить переменным названия столбцов?Я пробовал разные функции,но они не помогли....Они выводять результат только одного столбца....А с помощью какой функции получить названия столбцов я вообще не знаю....

Неактивен

 

#4 22.01.2008 12:14:56

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5827

Re: Получение названий столбцов с конструкцией INFORMATION_SCHEMA

$columns = '';
$sql = "SELECT column_name FROM `INFORMATION_SCHEMA`.`COLUMNS` WHERE table_schema='structura' AND table_name='struc' AND column_name LIKE '%-3'";
$result = mysql_query($sql) or die(mysql_error());
while($aRow = mysql_fetch_assoc($result)) {
  // массив $aRow - содержит названия столбцов, обрабатывайте их как Вам угодно
  // например, можно сформировать из них список для составления след запроса
  $columns .= ", ".$aRow["column_name"];
}
// у Вас получился список столбцов, начинающийся с запятой, первый символ нужно удалить

$columns = substr($columns, 1);

//далее нужный Вам запрос
$sql = "SELECT".$columns." ....";

Неактивен

 

#5 22.01.2008 12:34:50

Никита
Завсегдатай
Откуда: Тюмень
Зарегистрирован: 15.11.2007
Сообщений: 73

Re: Получение названий столбцов с конструкцией INFORMATION_SCHEMA

Болбщое пасиба)Все понятно)

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson