Другие языки программирования и технологии
[MySQL] Как получить все записи в таблице начиная с определённого значения?
есть таблица messages, в которой имеется колонка id (обозначающая, собственно, id-шник сообщения). желательно одним запросом получить все сообщения с i-ого по последнее. как это сделать?
sql запрос:
select * from messages where id > i
пример кода на php:
http://pastie.org/716785
function error($message) {
echo($message."\n");
exit;
}
function mysql_open() {
$username = '...';
$password = '...';
$database = '...';
$mysqli = new mysqli('localhost',$username,$password,$database);
if(mysqli_connect_error()) error("can't connect to database");
return $mysqli;
}
$i = 50;
$mysqli = mysql_open();
$res = $mysqli->query("select * from messages where id > $i");
if(!$res) error("query error");
while($row = $res->fetch_object()) {
echo $row->id."\n";
}
$mysqli->close();
select * from messages where id > i
пример кода на php:
http://pastie.org/716785
function error($message) {
echo($message."\n");
exit;
}
function mysql_open() {
$username = '...';
$password = '...';
$database = '...';
$mysqli = new mysqli('localhost',$username,$password,$database);
if(mysqli_connect_error()) error("can't connect to database");
return $mysqli;
}
$i = 50;
$mysqli = mysql_open();
$res = $mysqli->query("select * from messages where id > $i");
if(!$res) error("query error");
while($row = $res->fetch_object()) {
echo $row->id."\n";
}
$mysqli->close();
вот кусок кода ( правда он не слишко чистенький на скорую руки когда писалсо )на тему работа с бд. мож поможет... с БД берутся поля от номера $start по $num строк что имеют поле parent равным $parent (`parent`='$parent' ) для выборки больше определенного значения поменять "=" на ">"...а также запрос на общее количество полей с (`parent`='$parent' ) ...кароче ето для постраничного вывода с бд... вся инфа упаковуетсо в один масив для удобства - мне так хотелось... =)
function GetImages($parent,$start=-1,$num=-1){
global $cfg;
global $GlobalDB;
if(mysql_select_db($cfg["MYSQL.MainDB"],$GlobalDB)){
$res=mysql_query("select * from ".$cfg["Image.Table"]." where `parent`='$parent' LIMIT $start,$num",$GlobalDB);
$res_num=mysql_query("select id from ".$cfg["Image.Table"]." where `parent`='$parent'",$GlobalDB);
if($res!=false){
$data=mysql_fetch_array($res);
$result=array();
$result['items']=array();
if($res_num!=false){
$result['count']=mysql_num_rows($res_num);
}
while($data!=false){
$result['items'][$data['id']]['name']=$data['name'];
$result['items'][$data['id']]['src']=$data['src'];
$result['items'][$data['id']]['info']=$data['info'];
$result['items'][$data['id']]['tags']=$data['tags'];
$result['items'][$data['id']]['user']=$data['user'];
$result['items'][$data['id']]['rating']=$data['rating'];
$result['items'][$data['id']]['viewcount']=$data['viewcount'];
$result['items'][$data['id']]['date']=$data['date'];
$result['items'][$data['id']]['time']=$data['time'];
$result['items'][$data['id']]['group']=$data['group'];
$data=mysql_fetch_array($res);
}
return $result;
}
}
return false;
}
function GetImages($parent,$start=-1,$num=-1){
global $cfg;
global $GlobalDB;
if(mysql_select_db($cfg["MYSQL.MainDB"],$GlobalDB)){
$res=mysql_query("select * from ".$cfg["Image.Table"]." where `parent`='$parent' LIMIT $start,$num",$GlobalDB);
$res_num=mysql_query("select id from ".$cfg["Image.Table"]." where `parent`='$parent'",$GlobalDB);
if($res!=false){
$data=mysql_fetch_array($res);
$result=array();
$result['items']=array();
if($res_num!=false){
$result['count']=mysql_num_rows($res_num);
}
while($data!=false){
$result['items'][$data['id']]['name']=$data['name'];
$result['items'][$data['id']]['src']=$data['src'];
$result['items'][$data['id']]['info']=$data['info'];
$result['items'][$data['id']]['tags']=$data['tags'];
$result['items'][$data['id']]['user']=$data['user'];
$result['items'][$data['id']]['rating']=$data['rating'];
$result['items'][$data['id']]['viewcount']=$data['viewcount'];
$result['items'][$data['id']]['date']=$data['date'];
$result['items'][$data['id']]['time']=$data['time'];
$result['items'][$data['id']]['group']=$data['group'];
$data=mysql_fetch_array($res);
}
return $result;
}
}
return false;
}
используй
where
where
select * from messages where id>i
приблизительно вот так, вот только с синтаксисом не уверен, но логика правильная должна быть
приблизительно вот так, вот только с синтаксисом не уверен, но логика правильная должна быть
Похожие вопросы
- Как в Fine Reader уменьшить размер полученного результата? Размер А4 - таблицы огромные и за пределы бумаги выходят.
- Какая концепция таблиц в БД MySQL лучше?
- Здравствуйте! Помогите изменить массово данные таблиц в mysql
- Добрый день. Только начинаю осваивать с#. И вот возник вопрос. Как программно заполнить combobox из таблицы бд mysql?
- С++.Составить программу для определения таблицы значений функции у в произвольном диапазоне [a, b
- MySql в чем плюсы? Почему не обойтись?
- Excel. Как значения каждой 3й строки таблицы умножить на 1000? Подскажите пожалуйста?!
- Вывести на экран таблицу значений функции Y(x) и ее разложения в ряд S(x)
- Составьте таблицу значений Pascal
- PHP и MySQL. Пишу вот такой код, как в книге написано, но не работает. В чем причина?
record[$recordID]["text"] ?