Я использую MySQL, у меня есть таблица с 9 столбцами. Одним из них является первичный ключ.Выбор одной строки в MySQL
Как выбрать одну строку с помощью первичного ключа или столбца 8 или 4?
Я использую MySQL, у меня есть таблица с 9 столбцами. Одним из них является первичный ключ.Выбор одной строки в MySQL
Как выбрать одну строку с помощью первичного ключа или столбца 8 или 4?
Если я правильно понимаю ваш вопрос:
SELECT * FROM tbl WHERE id = 123 OR colname4 = 'x' OR colname8 = 'y' LIMIT 1
'LIMIT' keyword делает, что есть только одна строка, возвращаемая.
Это поможет мне дальше по дороге, спасибо! – aggitan
Однако «MySQL не поддерживает LIMIT в подзапросах для определенных подзапросов». См. [Ограничения по подзапросам] (https://dev.mysql.com/doc/refman/5.5/ru/subquery-restrictions.html). –
Столбцы в SQL не имеют определенного «порядка». Системы баз данных обычно отслеживают заказ для целей показа, но нет смысла запрашивать базу данных для выбора столбца по номеру. Вам нужно знать имя столбца, чтобы запросить его содержимое.
То же самое касается первичного ключа (который, кстати, может быть не только одним столбцом). Вы должны знать, в каком столбце он есть, и какой именно столбец назван, чтобы выполнить запрос.
Если вы не знаете, эти вещи, или нужно понять их динамически, то
DESCRIBE tablename;
расскажет вам имена каждого столбца, и является ли он частью первичного ключа или нет. Он вернет таблицу, которую вы можете прочитать, как и любой другой результат.
выберите одну строку: 'select * from yourtable limit 1;' –