Я пытаюсь выбрать из столбца, где строка имеет номер записи 9. Это кажется легкой задачей, но я не могу понять. Вот что я пытался до сих пор:Выберите строки из столбца, которые имеют значение 9
SELECT * FROM posts WHERE category = 9 LIMIT 3
и это
SELECT * FROM posts WHERE category LIKE '%9%' LIMIT 3
и несколько больше, но никто не возвращать правильные результаты.
UPDATE:
В таблице posts
У меня есть
post_id
....
category
Категория имеет значения 1
, 2
и т.д. Я хочу показать на сайте только эти сообщения, которые имеют значение 9 в колонке категории category=9
ОБНОВЛЕНИЕ 2:
Это сообщение таблица
CREATE TABLE IF NOT EXISTS `posts` (
`post_id` int(11) NOT NULL AUTO_INCREMENT,
`post_title` varchar(250) NOT NULL,
`post_text` longtext NOT NULL,
`post_author` varchar(20) NOT NULL,
`category` int(4) NOT NULL,
PRIMARY KEY (`post_id`),
KEY `category` (`category`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=13 ;
ALTER TABLE `posts`
ADD CONSTRAINT `posts_ibfk_1` FOREIGN KEY (`category`) REFERENCES `category` (`cat_id`);
и данные, например
INSERT INTO `posts` (`post_id`, `post_title`, `post_text`, `post_author`, `category`) VALUES
(1, 'title', 'LOREM IPSUM', 'Athor', 1),
UPDATE 3: полный код, который я пытаюсь использовать
require_once 'misc/database.inc.php';
$pdo = Database::connect();
error_reporting(E_ALL);
ini_set('display_errors', 1);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
function truncate($text, $chars = 180) {
$text = $text." ";
$text = substr($text,0,$chars);
$text = substr($text,0,strrpos($text,' '));
$text = $text." ...";
return $text;
}
$query2 = $pdo->query("SELECT * FROM posts WHERE category = '7' LIMIT 3");
foreach ($query2 as $row) {
echo '<li class="col-md-12 col-sm-4">
<div class="single-post">
<h4>'.$post['post_title'].'</h4>
<p>'.truncate($row['post_text']).'</p>
<a href="#" style="float: right;"> More -></a>
</div>
</li>';
}
Database::disconnect();
Я не уверен, что следую этому вопросу. Не могли бы вы предоставить некоторые примеры данных и результаты, которые вы пытаетесь получить? – Mureinik
Я немного обновил свой вопрос. Является ли это более ясным сейчас или еще нет? –
Является ли категория целым числом или строкой? Если это строка, вы должны попробовать 'SELECT * FROM posts WHERE category = '9' LIMIT 3' – Wouter