PDA

View Full Version : بدست آوردن مقدار آخرین رکورد بانک اطلاعاتی



rash44
دوشنبه 07 بهمن 1387, 12:50 عصر
سلام
من 1 دیتا بیس دارم . توی این دیتا بیس هم فیلد id ندارم . الان می خوام آخرین رکورد بانک رو بیرون بکشم
مرسی
select * from test limit 1

narsic
سه شنبه 08 بهمن 1387, 14:34 عصر
با سلام
متوجه منظورتون نشدم ؟؟

rash44
سه شنبه 08 بهمن 1387, 16:13 عصر
با سلام
متوجه منظورتون نشدم ؟؟
سلام
ببینید من 1 بانک اطلاعاتی دارم
توی قسمت مدیریت وب سایت می خوام 1 جا ایم و مشخصات جدیدیترین کاربری که ثبت نام کرده نشون بذدم . متاسفانه توی دیتا بیس فیلد هی id یا همون شماره ای که به کاربر اختصاص داده می شه رو ندارم . در حال حاضر هم دسترسی به بانک ندارم که بیام این فیلد رو بهش اضاف کنم .
جستجو هم کردم امه چیزی گیرم نیومد
ممنون میشم اگه راهنمایی کنید
اینم ساختار جدول


CREATE TABLE user (
userName varchar(50) NOT NULL,
password varchar(60) NOT NULL,
firstNameFa varchar(70) NOT NULL,
lastNameFa varchar(70) NOT NULL,
firstNameEn varchar(70) NOT NULL,
lastNameEn varchar(70) NOT NULL,
fatherName varchar(70) NOT NULL,
bDate bigint(10) NOT NULL,
shSh varchar(30) NOT NULL,
mahalSodur varchar(100) NOT NULL,
gender varchar(15),
job varchar(100),
grade varchar(40),
melliCode varchar(20) NOT NULL,
mobile varchar(22) NOT NULL,
phoneNo varchar(22) NOT NULL,
city varchar(50) NOT NULL,
address varchar(250) NOT NULL,
postalCode varchar(20),
PRIMARY KEY (userName)
);
http://barnamenevis.org/forum/images/statusicon/user_offline.gif http://barnamenevis.org/forum/images/buttons/report.gif http://barnamenevis.org/forum/images/misc/progress.gif http://barnamenevis.org/forum/images/buttons/edit.gif

saied_genius
سه شنبه 08 بهمن 1387, 18:34 عصر
select top(1)* from [tableName] order by [fieldName] desc


موفق باشيد.

hbi
سه شنبه 08 بهمن 1387, 20:02 عصر
$result = mysql_query("SELECT * FROM ozv " , $myconn);
دستور mysql_num_rows($result) ; تعداد کل رکوردها را بر میگرداند البته رکورها از صفر شروع میشود
با دستور print(@mysql_result($result,mysql_num_rows($result ) ; $i++),0).""); اولین فیلد از اخرین رکورد چاپ میشود ( 0 در واقع اولین فیلد است اگر دومین فیلد ذا مرخواهی باید 1 والا اخر را بزنی )

rash44
سه شنبه 08 بهمن 1387, 20:18 عصر
select top(1)* from [tableName] order by [fieldName] desc


موفق باشيد.

سلام
دستور select top توی My Sql جواب نمیده .
در ضمن می خوام آخرین نفری که توی سایت ثبت نام کرده رو نشون بدم . فیلد id هم ندارم که بخوام بر اساس اون و با دستور Select * FROM test order by id desc limit 1 آخرین کاربر رو پیدا کنم .
دوستان لطفا راهنمایی کنید . ساختار جدول هم که گذاشتم
ممنون

I,Nobody
چهارشنبه 09 بهمن 1387, 07:14 صبح
فكر مي كنم بهتره الآن فيلد id رو بصورت auto_increament به جدول اضافه كني. بعدش مشكلت رو حل كني

yaqubian
چهارشنبه 09 بهمن 1387, 07:51 صبح
دوست عزیز
من هم پیشنهاد می کنم یه فیلد id اضافه کنید و بعد max اون رو بیرون بکشید.
موفق باشید

sepehrmm
چهارشنبه 09 بهمن 1387, 12:16 عصر
اول با count تعداد record را در بیار :
SELCT COUNT(*) FROM tablename
و مقدارشو یکی کم کن و مثلا تو متغیر x بریز :
$x=COUNT(*)-1;
بعد از این دستور استفاده کن:
SELECT * FROM tablename LIMIT $x,1

نکته : میتونی جفت query های بالا رو یکی کنی ( Nested Select ) ولی فکر میکنم تو Mysql جواب نمیده!