Выбор одной строки в MySQL - PullRequest
       28

Выбор одной строки в MySQL

12 голосов
/ 11 сентября 2009

Я использую MySQL, у меня есть таблица, которая имеет 9 столбцов. Одним из них является первичный ключ.

Как выбрать одну строку по первичному ключу или столбцу 8 или 4?

Ответы [ 3 ]

27 голосов
/ 11 сентября 2009

Если я правильно понимаю ваш вопрос:

SELECT * FROM tbl WHERE id = 123 OR colname4 = 'x' OR colname8 = 'y' LIMIT 1

Ключевое слово LIMIT обеспечивает возврат только одной строки.

3 голосов
/ 11 сентября 2009
select *
from MyTable
where MyPrimaryKey = 123
1 голос
/ 11 сентября 2009

Столбцы в SQL не имеют определенного «порядка». Системы баз данных обычно следят за порядком для отображения, но не имеет смысла просить базу данных выбрать столбец по номеру. Вам необходимо знать имя столбца для запроса его содержимого.

То же самое относится и к первичному ключу (который, кстати, может быть не одним столбцом). Вы должны знать, какой это столбец и как называется этот столбец, чтобы выполнить запрос.

Если вы не знаете этих вещей или вам нужно их динамически выяснить, то

DESCRIBE tablename;

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...