نمایش رکورد ها در دیتابیس با یک مقدار مشخص
من دارای یک جدول هستم به نام news و دارای یک فیلد به نام group که در آن مقدار های عددی است حالا
کاری کنم که فقط در فیلد group هر رکوردی که دارای مقدار 3 است به نمایش در بیاد
من با کد زیر این کار را میکنم ولی چند مشکل داره
1- رکوردهایی که دارای مقدار 3 هستند نمایش داده میشه اما در انتهای آن رکوردهایی که دارای این مقدار نیستند هم به نمایش در می آید
2-تمامی رکوردهایی که دارای مقدار 3 هستند به ترتیب آخرین رکورد های ثبت شده به نمایش در نمی آیند یعنی می خواهم به ترتیب جدید ترین رکورد تا قدیمی ترین رکورد با مقدار 3 به نمایش در بیاید
<?php
include '../../Administrator/config.php';
connect($username,$password,$Mydb);
mysql_query('SET NAMES \'utf8\'');
$read_sql= "select * from `news` ORDER BY `Gorup`=3 DESC LIMIT 0,30";
$tab=mysql_query($read_sql);
$row=mysql_fetch_array($tab);
mysql_close ($con);
?>
نقل قول: نمایش رکورد ها در دیتابیس با یک مقدار مشخص
كوئري رو به اين صورت اصلاح كنيد
select * from `news` WHERE `Group`=3 ORDER BY `Gorup` DESC LIMIT 0,30
نقل قول: نمایش رکورد ها در دیتابیس با یک مقدار مشخص
ممنون
رکورد های مورد نظر به درستی نمایش داده می شوند اما رکورد ها از قدیم به جدید نمایش داده میشه
نقل قول: نمایش رکورد ها در دیتابیس با یک مقدار مشخص
رکورد های مورد نظر به درستی نمایش داده می شوند اما رکورد ها از قدیم به جدید نمایش داده میشه
آیا ممکنه به خاطر اینکه در داخل دیتابیس میزان رکورد های ثبت شده زیاد است این مشکل پیش آمده باشد
نقل قول: نمایش رکورد ها در دیتابیس با یک مقدار مشخص
نه دوست عزیز، بخاطر DESC توی ORDER BY هست. این رو امتحان کنید:
SELECT * FROM `news` WHERE (`Group`='3') ORDER BY `id` LIMIT 0,30
نقل قول: نمایش رکورد ها در دیتابیس با یک مقدار مشخص
نقل قول: نمایش رکورد ها در دیتابیس با یک مقدار مشخص
چیزی که شما نیاز دارید این هست:
SELECT * FROM `news` WHERE `Group`='3'
برای نمایش از آخر به اول:
SELECT * FROM `news` WHERE `Group`='3' ORDER BY `id DESC
برای محدود کردن تعداد خروجی:
SELECT * FROM `news` WHERE `Group`='3' LIMIT 50