2014-12-07 4 views
1

У меня есть форум имен таблиц, таблица выглядит так:Удалить строку, используя where where

id  studentid description teacherid 
1  abc123   hi   zxc123 
2  abc123  hello   qwe321 

Я хочу, чтобы удалить строку, , что я пытался есть

<?php 

require_once('Connections/dbcon.php'); 

mysql_select_db("school", $dbcon); 

$student_id=$_GET['student_id']; 
$delete=mysql_query("DELETE from forum WHERE student_id='$student_id'")or die(mysql_error()); 

echo "<script language='Javascript'>alert('The Forum Successfully Deleted!'); 

location.href='tviewforum.php'</script>"; 
?> 

Я хочу, чтобы конкретное сообщение в форуме. Если студент сделать 2 форума, я хочу, чтобы удалить из них 1 и держать другой 1.

+0

Если вы хотите удалить одну строку в таблице 'forum', используйте' forum.id', а не 'forum.studentid'. –

+0

Помогите мне сделать запрос –

ответ

0

вы можете максимально сохранить идентификатор при наличии более чем 1 форум, созданный студентом

вы можете использовать group by и having для получения максимального id и удаления других строк.

delete T from Table1 T 
join (select max(id) as id , studentid 
     from Table1 
     where studentid ='abc123' 
     group by studentid 
     having count(*) >1 
    ) NewT 
on T.id <> NewT.id 
AND T.studentid = NewT.studentid 
+0

с помощью этого запроса, возможно ли, если учащийся более 1 форума в таблице, и я хочу сохранить все в моей базе данных. и удалить конкретный форум позже на –

+0

ЭТО РАБОТАЕТ !!! БОЛЬШОЕ СПАСИБО!!!! –

Смежные вопросы