Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Запрос MySQL 
V
    Опции темы
NNaarreekk
Дата 10.12.2008, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 768
Регистрация: 23.6.2007
Где: Армения

Репутация: 0
Всего: 3



Есть база, в ней таблицы: m0 m1 m2... неизвестное количество, кроме этого еще и другие таблицы есть(тоже неизвестное количество)..

Как можно узнать сколько таблиц с названием m* одним запросом??
PM MAIL WWW   Вверх
theworldcreator
Дата 10.12.2008, 17:59 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 362
Регистрация: 25.8.2007
Где: Москва

Репутация: 10
Всего: 13



получаем список всех таблиц
Код

 SHOW TABLES FROM [database]

с помощью php смотрим сколько там нужных таблиц

Это сообщение отредактировал(а) theworldcreator - 10.12.2008, 18:09
PM MAIL WWW ICQ   Вверх
NNaarreekk
Дата 10.12.2008, 19:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 768
Регистрация: 23.6.2007
Где: Армения

Репутация: 0
Всего: 3



theworldcreator, а ты не устанешь мне помогать? smile 
PM MAIL WWW   Вверх
theworldcreator
Дата 10.12.2008, 19:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 362
Регистрация: 25.8.2007
Где: Москва

Репутация: 10
Всего: 13



Ответы на интересные вопросы повышают квалификацию отвечающего)
PM MAIL WWW ICQ   Вверх
Nigel
Дата 10.12.2008, 22:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


познаю мир
**


Профиль
Группа: Участник
Сообщений: 515
Регистрация: 20.11.2007

Репутация: 7
Всего: 19



А также можно выбрать все в мускуле. Нужна версия 5 и выше только.
Код

SELECT count(*)
FROM information_schema.tables
WHERE table_schema = 'yourdb'
AND table_name REGEXP '^m'


PM MAIL   Вверх
NNaarreekk
Дата 10.12.2008, 22:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 768
Регистрация: 23.6.2007
Где: Армения

Репутация: 0
Всего: 3



Nigel, спсибо! smile 
MySQL-сила!

Извините конечно если глупость скажу, но как с этим кодом конкретную цыфру получить?
Код

$result = mysql_query("SELECT count(*)
FROM information_schema.tables
WHERE table_schema = 'yourdb'
AND table_name REGEXP '^m'");

А потом??

---
Вот мой пример тоже поставлю, может кому нибудь пригодится:
Код

$menuCount=0;
$result = mysql_query("SHOW TABLE STATUS FROM `DB_name`");
while($array = mysql_fetch_array($result)) {
    if(preg_match("#\m\d#",$array['Name']))$menuCount++;
}


PM MAIL WWW   Вверх
_zorn_
Дата 11.12.2008, 07:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1076
Регистрация: 21.8.2007

Репутация: 6
Всего: 12



Цитата(NNaarreekk @ 10.12.2008,  22:37)
Nigel, спсибо! smile 
MySQL-сила!

Извините конечно если глупость скажу, но как с этим кодом конкретную цыфру получить?
Код

$result = mysql_query("SELECT count(*)
FROM information_schema.tables
WHERE table_schema = 'yourdb'
AND table_name REGEXP '^m'");

А потом??

Код

echo mysql_result($result,0,0);


Это сообщение отредактировал(а) _zorn_ - 11.12.2008, 07:20
PM MAIL   Вверх
NNaarreekk
Дата 11.12.2008, 18:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 768
Регистрация: 23.6.2007
Где: Армения

Репутация: 0
Всего: 3



_zorn_, спасибо!

Теперь еще такой вопрос и я буду просто счастлив!
Код

SELECT count(*)
FROM information_schema.tables
WHERE table_schema = 'yourdb'
AND table_name REGEXP '^m'

Как я понял этот запрос дает количество таблиц вида m*, а можно делать так чтоб возвращал количество таблиц такие в которых вместо * цыфры, потому что могут быть таблицы типа m_admin скажем.
PM MAIL WWW   Вверх
Валерия
Дата 11.12.2008, 19:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 598
Регистрация: 10.3.2007

Репутация: 3
Всего: 8



Код

SELECT count(*)
FROM information_schema.tables
WHERE table_schema = 'yourdb'
AND table_name REGEXP '^m[0-9]+$'


PM MAIL   Вверх
theworldcreator
Дата 11.12.2008, 20:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 362
Регистрация: 25.8.2007
Где: Москва

Репутация: 10
Всего: 13



регулярные выражания, удобная штука, почитай.
PM MAIL WWW ICQ   Вверх
NNaarreekk
Дата 11.12.2008, 22:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 768
Регистрация: 23.6.2007
Где: Армения

Репутация: 0
Всего: 3



Валерия, спасибо!


theworldcreator, думаешь не читал?
Я свой паспорт меньше читал чем эти регулярные выражения! Ну не виноват я что не понимаю! smile 

Не знаю как вы а я думаю что вопросу был дан исчерпывающий ответ!

Спасибо всем за старание!
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0598 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.