Mysql вывести колонки таблицы

Запрос MySQL для получения имен столбцов?

Я хотел бы получить все имена col таблицы mysql в массив в php?

есть ли запрос для этого?

18 ответов

лучший способ-использовать information_schema для метаданные виртуальной базы данных. В частности,базы данных information_schema.Колонки таблица.

Это очень мощный и может дать вам тонны информации без необходимости разбора текста (например, колонного типа, допускает ли столбец значения null, максимальный размер столбца, набор символов и т. д.).

О, и это стандартный SQL (тогда как SHOW . является конкретным расширением MySQL).

дополнительные информация о разнице между SHOW. и с помощью INFORMATION_SCHEMA таблицы, проверьте MySQL документация INFORMATION_SCHEMA В общем.

вы можете использовать следующий запрос для MYSQL:

Ниже приведен пример кода, который показывает, как реализовать выше синтаксис в php, чтобы перечислить имена столбцов:

для получения подробной информации о выходе SHOW COLUMNS FROM TABLE на странице: MySQL Refrence.

кажется, есть 2 пути:

Я делал это в прошлом.

редактировать: сегодня я узнал, лучший способ сделать это. См. ответ ircmaxell.

парсить вывод SHOW COLUMNS FROM table;

старая функция PHP «mysql_list_fields ()» устарела. Итак, сегодня лучший способ получить имена полей-это запрос «показать столбцы из table_name [LIKE ‘name’]». Итак, вот небольшой пример:

использовать mysql_fetch_field() для просмотра всех данных столбца. См.руководство.

«предупреждение Это расширение является устаревшей начиная с версии PHP 5.5.0, и будет удалено в будущем.»

Если вы хотите проверить всю структуру таблицы с некоторыми поданными, то используйте этот код. В этом запросе я выбираю column_name, column_type и table_name для получения дополнительной информации . Я использую order BY column_type, чтобы легко его видеть.

Если вы хотите проверить только двойной тип файла, то вы можете сделать это легко

Если вы хотите проверить, какое поле разрешает тип null и т. д., Вы можете использовать это

вы хотите проверить больше, чем ссылка thik также поможет вам.

ПОКАЗАТЬ СТОЛБЦЫ в MySQL 5.1 (не 5.5) использует временную таблицу диска.

поэтому в некоторых случаях его можно считать медленным. По крайней мере, он может поднять свой created_tmp_disk_tables значение. Представьте себе одну временную таблицу дисков на соединение или на каждый запрос страницы.

ПОКАЗАТЬ СТОЛБЦЫ — это не так уж медленно, возможно, потому, что он использует кэш файловой системы. Phpmyadmin говорит

0,5 мс последовательно. Это ничто по сравнению с 500ms-1000ms обслуживания страницы wordpress. Но все же иногда это имеет значение. Вовлечение дисковой системы, вы никогда не знаете, что происходит, когда сервер занят, кэш заполнен, hdd заглох и т. д.

получение имен столбцов через ВЫБЕРИТЕ * FROM . Предел 1 был около

0,1 мс, и он также может использовать кэш запросов.

Итак, вот мой маленький оптимизированный код для получения имен столбцов из таблицы без использования показать колонки если можно:

  • пока первая строка таблицы не содержит диапазон мегабайт данных, она должна работать нормально.
  • имена функций db_rows и db_row_ar должен быть заменен на вашу конкретную базу данных установка.

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

это возвращает простой массив имен столбцов / имен переменных в вашей таблице или массиве в виде строк, что мне нужно для динамического построения запросов MySQL. Мое разочарование было в том, что я просто не знаю, как индексировать массивы в PHP очень хорошо, поэтому я не был уверен, что делать с результатами DESC или SHOW. Надеюсь, мой ответ поможет новичкам, таким как я!

для проверки результата: print_r($col_names);

Источник

Получить имена столбцов таблицы в MySQL?

есть ли способ захватить имя столбцов таблицы в mysql? использование php

17 ответов:

или в более новых версиях вы можете использовать information_schema для:

следующие операторы SQL почти эквивалентны:

Я сделал функцию PDO, которая возвращает все имена столбцов в простом массиве.

на выходе будет массив:

извините за некро, но мне нравится моя функция 😉

P. S. Я не включенными класс ядро, но вы можете использовать свой собственный класс.. Д. С.

это решение из командной строки mysql

в приведенном ниже запросе просто измените на вашу базу данных и на ваше имя таблицы, где вы просто хотите значения полей оператора DESCRIBE

функция MySQL опишите таблицу должно привести вас туда, куда вы хотите пойти (поместите свое имя таблицы в «таблицу»). Вам придется разобрать вывод, но это довольно легко. Насколько я помню, если вы выполните этот запрос, результат запроса PHP, обращающийся к функциям, которые обычно дают вам пару ключ-значение, будет иметь имена столбцов в качестве ключей. Но прошло некоторое время с тех пор, как я использовал PHP, так что не держите меня за это. 🙂

вы также можете проверить mysql_fetch_array() , например:

интересно также отметить, что вы можете использовать
EXPLAIN table_name что является синонимом DESCRIBE table_name и SHOW COLUMNS FROM table_name хотя объяснить чаще используется для получения информации о плане выполнения запроса.

The mysql_list_fields функция может вас заинтересовать ; но, как говорится в руководстве:

эта функция устарела. Это предпочтительно использовать mysql_query() to выдать SQL заявление.

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

Источник

MySQL/MariaDB: наиболее используемые команды, примеры

Ниже предоставлен список наиболее полезных и часто используемых команд MySQL с примерами.

Это перевод статьи отсюда>>>, с некоторыми незначительными изменениями и дополнениями.

mysql> в начале строки означает, что команда выполняется из MySQL-клиента.

Символ # или $ в начале строки означает, что команда выполняется из командной строки.

UPD 03.03.2019 Пост изначально был размещён в 2012-ом году, и стал самым читаемым в блоге – 198737 просмотров на данный момент. Сегодня его немного обновил – изменил форматирование текста команд, и разбил всё на разделы для простоты навигации по примерам.

Общие команды

Что бы проверить статус сервера MYSQL выполните:

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

Что бы подключиться к серверу MySQL из консоли, если сервер MySQL находится на удаленном хосте db1.example.com :

Работа с базами и таблицами

Работа с базами

Создать базу данных на MySQL сервере:

Показать список всех баз данных на сервере MySQL:

Переключиться для работы с определенной базой данных:

Работа с таблицами

Отобразить все таблицы в базе данных:

Просмотреть формат таблицы в базе:

Показать все содержимое таблицы:

Отобразить количество строк в таблице:

Подсчитать количество колонок в таблице:

Удаление строки в таблице:

Удаление столбца из таблицы:

Удалить таблицу из базы:

Работа с колонками

Добавить колонку в таблицу:

Изменение имени колонки:

Создать колонку с уникальным именем, что бы избежать дубликатов в названиях:

Изменение размера колонки:

Выборка данных

Показать все содержимое таблицы:

Отобразить колонки и их содержимое в выбранной таблице:

Отобразить строки в определенной таблице, содержащие “ whatever“ :

Отобразить все записи в определенной таблице, содержащие “ Bob ” и телефонный номер “ 3444444 :

Отобразить все записи, НЕ содержащие имя “ Bob ” и телефонный номер “ 3444444 “, отсортированные по полю phone_number :

Показать все записи, начинающиеся с букв ‘ bob ” и телефонного номера “ 3444444 ” в определенной таблице:

Показать все записи, начинающиеся с букв ‘ bob ” и телефонного номера “ 3444444 “, ограничиваясь записями с 1-ой до 5-ой:

Показать все уникальные записи:

Отобразить выбранные записи, отсортированные по возрастанию ( asc ) или убыванию ( desc ):

Регулярные выражения

Использование регулярных выражений ( “REGEXP BINARY” ) для поиска записей. Например, для регистро-независимого поиска – найти все записи, начинающиеся с буквы А :

Импорт и экспорт данных в/из файла

Загрузка файла CSV в таблицу:

Пользователи, пароли сервера MySQL:добавление, изменение пользователей и паролей

Создание нового пользователя – подключение к серверу MySQL под root , переключение к базе данных, добавление пользователя, обновление привилегий:

Изменений пользовательского пароля из консоли на удаленном хосте db1.example.org :

Изменение пользовательского пароля из консоли MySQL – подключение под root , обновление пароля, обновление привилегий:

Восстановление/изменение пароля root сервера MySQL — остановка MySQL, запуск без таблиц привилегий, подключение под root , установка нового пароля, выход и перезапуск MySQL.

Подробнее о восстановлении пароля root для MySQL написано тут>>>.

Источник

Вывод столбца из mysql

Здравствуйте. Имеется таблица с названиями предметов:

history (id_history, id, subject)

Мне нужно вывести все subject по заданному id, так как в таблице id будет повторяться. Я выбираю столбец так:

Но у меня никак не получается через echo вывести этот столбец.

Читал эту статью , запутался в 4-х таблицах, мне бы на моем примере объяснить.

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Вывод результатов из одной таблицы и одного столбца в два разных столбца
Ребят помогите, измучалась совсем, не знаю как решить. Есть таблица Таблица t2 Id Pid .

Вывод Столбца MySQL
Привет всем, у меня такой вопрос, можно ли вывести столбец из таблицы в memo или listbox, столбец.

Вывод значений столбца, которые не равны значениям другого столбца
Необходимо вывести строки табл.1 со столбцами «А»,»Б»,»В» с условием, что значения столбца «В» не.

Ajax отправка данных из формы в базу mysql и вывод из базы mysql
$(function() < $('#chat_submit').click(function(e) < e.preventDefault(); .

eridan_prime, сами видите, в массиве только один элемент.

А теперь то же самое, но без WHERE в запросе.

Источник

Примеры SQL запросов к базе данных MySQL


Содержание статьи
1. Самые простые MySQL запросы
2. Простые SELECT (выбрать) запросы
3. Простые INSERT (новая запись) запросы
4. Простые UPDATE (перезаписать, дописать) запросы
5. Простые DELETE (удалить запись) запросы
6. Простые DROP (удалить таблицу) запросы
7. Сложные MySQL запросы
8. MySQL запросы и переменные PHP

1. Самые простые SQL запросы

1. Выведет список ВСЕХ баз.

2. Выведет список ВСЕХ таблиц в Базе Данных base_name.

2. Простые SELECT (выбрать) запросы к базе данных MySQL

SELECT – запрос, который выбирает уже существующие данные из БД. Для выбора можно указывать определённые параметры выбора. Например, суть запроса русским языком звучит так — ВЫБРАТЬ такие-то колонки ИЗ такой-то таблицы ГДЕ параметр такой-то колонки равен значению.

1. Выбирает ВСЕ данные в таблице tbl_name.

2. Выведет количество записей в таблице tbl_name.

3. Выбирает (SELECT) из(FROM) таблицы tbl_name лимит (LIMIT) 3 записи, начиная с 2.

4. Выбирает (SELECT) ВСЕ (*) записи из (FROM) таблицы tbl_name и сортирует их (ORDER BY) по полю id по порядку.

5. Выбирает (SELECT) ВСЕ записи из (FROM) таблицы tbl_name и сортирует их (ORDER BY) по полю id в ОБРАТНОМ порядке.

6. Выбирает (SELECT) ВСЕ (*) записи из (FROM) таблицы users и сортирует их (ORDER BY) по полю id в порядке возрастания, лимит (LIMIT) первые 5 записей.

7. Выбирает все записи из таблицы users, где поле fname соответствует значению Gena.

8. Выбирает все записи из таблицы users, где значение поля fname начинается с Ge.

9. Выбирает все записи из таблицы users, где fname заканчивается на na, и упорядочивает записи в порядке возрастания значения id.

10. Выбирает все данные из колонок fname, lname из таблице users.

Внимание! Старайтесь указывать конкретные колонки (как в примере 10). Это важно для того, чтобы запросы обрабатывались намного быстрее!

11. Допустим у Вас в таблице пользовательских данных есть страна. Так вот если Вы хотите вывести ТОЛЬКО список встречающихся значений (чтобы, например, Россия не выводилось 20 раз, а только один), то используем DISTINCT. Выведет, из массы повторяющихся значений Россия, Украина, Беларусь. Таким образом, из таблицы users колонки country будут выведены ВСЕ УНИКАЛЬНЫЕ значения

12. Выбирает ВСЕ данные строк из таблицы users где age имеет значения 18,19 и 21.

13. Выбирает МАКСИМАЛЬНОЕ значение age в таблице users. То есть если у Вас в таблице самое большее значение age(с англ. возраст) равно 55, то результатом запроса будет 55.

14. Выберет данные из таблицы users по полям name и age ГДЕ age принимает самое маленькое значение.

15. Выберет данные из таблицы users по полю name ГДЕ id НЕ РАВЕН 2.

3. Простые INSERT (новая запись) запросы

INSERT – запрос, который позволяет ПЕРВОНАЧАЛЬНО вставить запись в БД. То есть создаёт НОВУЮ запись (строчку) в БД.

1. Делает новую запись в таблице users, в поле name вставляет Сергей, а в поле age вставляет 25. Таким образом, в таблицу дописывается новая строки с данными значениями. Если колонок больше, то они оставшиеся останутся либо пустыми, либо с установленными по умолчанию значениями.

4. Простые UPDATE запросы к базе данных MySQL

UPDATE – запрос, который позволяет ПЕРЕЗАПИСАТЬ значения полей или ДОПИСАТЬ что-то в уже существующей строке в БД. Например, есть готовая строка, но в ней нужно перезаписать параметр возраста, так как он изменился со временем.

1. В таблице users ГДЕ id равно 3 значение поля age становится 18.

2. Всё то же самое, что и в первом запросе, просто показан синтаксис запроса, где перезаписываются два поля и более.
В таблице users ГДЕ id равно 3 значение поля age становится 18, а country Россия.

5. Простые DELETE (удалить запись) запросы к базе данных MySQL

DELETE – запрос, который удаляет строку из таблицы.

1. Удаляет строку из таблицы users ГДЕ id равен 10.

6. Простые DROP (удалить таблицу) запросы к базе данных MySQL

DROP – запрос, который удаляет таблицу.

1. Удаляет целиком таблицу tbl_name.

7. Сложные запросы к базе данных MySQL

Любопытные запросы, которые могут пригодиться даже опытным пользователям

Данный сложный запрос ВЫБИРАЕТ колонки id,name,country В ТАБЛИЦАХ users,admins ГДЕ registration_date (дата) не старше 14 дней И activation НЕ РАВНО 0, СОРТИРОВАТЬ по registration_date в обратном порядке (новое в начале).

Выше указан пример так называемого запроса в запросе в SQL. Обновить возраст среди пользователей на 18+, где пол — мужской. Подобные варианты запроса не рекомендую. По личному опыту скажу, лучше создать несколько отдельных — они будут прорабатываться быстрее.

8. Запросы к базе данных MySQL и PHP

В MySQL запросы в PHP странице можно вставлять переменные в качестве сравниваемых и тп значений. Пара примеров

1. Выбирает все записи из таблицы users, где поле fname соответствует значению переменной $name.

2. В таблице users ГДЕ id равно 3 значение поля age изменяется на значение переменной $age.

Внимание! Если Вам интересен какой-либо ещё пример, то пишите вопрос в комментарии!

Источник

Читайте также:  Можно ли стирать кроссовки nike с баллоном
Оцените статью