2013-12-17 73 views
0

有沒有什麼辦法可以從選定的行中選擇最後插入的標識。 (不是來自表中的所有行)下面是我寫的代碼。我想選擇一個周屬性值最高的值。這也是該選定集的最後一個插入的ID。選擇表中所選行的最後一個插入的標識

$get_payment_details = 'SELECT * FROM payment WHERE m_id="' . $mselcted_memberI . '" AND app_id= "' . $aprvd_appid . '"'; 

$get_payment = mysql_query($get_payment_details); 
$get_pay_result = mysql_fetch_assoc($get_payment); 
$get_pay_count = mysql_num_rows($get_payment); 

if ($get_pay_count < 1) { 
    $query1 = "INSERT INTO payment(date,m_id,app_id,week,capital_topay,interest_to_pay,received,advanced,remain_capital,remain_interest) 
       VALUES('$date1',"."'".$mselcted_memberI."',"."'".$aprvd_appid."',"."'".$week1."',"."'".$aprvd_amount."',"."'".$ttl_interest."',"."'".$received1."',"."'".$advanced1."',"."'".$aprvd_amount."',"."'".$ttl_interest."')"; 
    $login_set = mysql_query($query1,$connection); 
    confirm_query($login_set); 
    echo $week1; 
} else if ($get_pay_count >0){ 

} 
+0

'ORDER BY whatever_you_like DESC LIMIT 1'? – Wrikken

+0

或者'SELECT MAX(whatever)FROM table'? –

+1

'mysql_insert_id' - 獲取上次查詢中生成的ID? – ArendE

回答

1

如果您正在使用預PHP 5.5,你可以使用mysql_insert_id()檢索最後插入的ID。從文檔:

<?php 
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); 
if (!$link) { 
    die('Could not connect: ' . mysql_error()); 
} 
mysql_select_db('mydb'); 

mysql_query("INSERT INTO mytable (product) values ('kossu')"); 
printf("Last inserted record has id %d\n", mysql_insert_id()); 
?> 

但請注意,此功能從PHP 5.5.0開始已棄用。該標準地推薦的解決方案如下:

0

您需要:

SELECT id FROM payment WHERE yourConditions ORDER BY week DESC LIMIT 0,1; 
相關問題