抱歉,我真的不知道如何为此制作标题,因为我无法解释它。例如我这里有一张桌子
c_id emp_id clinic_id
1 1 1
2 1 2
3 2 1
4 3 3
5 1 3
现在我会做这样的查询
select distinct * from table where clinic_id <> 1
结果将是
c_id emp_id clinic_id
2 1 2
4 3 3
5 1 3
此时我需要帮助,如果来自where clinic_id <> 1
某某emp_id
处于其排行状态(抱歉我的英语不好)。例如emp_id 1
。不得同时显示所有emp_id 1
。
所以结果就是
c_id emp_id clinic_id
4 3 3 // *The result I want*
答案 0 :(得分:1)
您可以使用//*[text()[contains(.,'shetty ruat pravin')]]
:
NOT EXISTS
答案 1 :(得分:0)
对于你正在寻找的结果,这样的事情会不会更简单?
SELECT DISTINCT * FROM table WHERE clinic_id !=1 AND emp_id !=1
这里我们说我们想要任何不是1的clinic_id和任何也不是1的emp_id。
由于您正在处理PHP,因此您只需将数字替换为您尝试不匹配的变量。
SELECT DISTINCT * FROM table WHERE clinic_id !=$session_variable AND emp_id !=$some_value
答案 2 :(得分:-1)
SELECT DISTINCT *
FROM table
WHERE clinic_id <> 1
AND emp_id NOT IN
(SELECT DISTINCT emp_id
FROM table
WHERE clinic_id = 1)
试试这个。
它使用子查询返回与emp_id
列中的1位于同一行的clinic_id
,并将其从结果集中删除,因为您也不希望这些emo_id
SELECT c_id, emp_id, clinic_id
FROM clinics
WHERE clinic_id <> 1
AND emp_id NOT IN
(SELECT DISTINCT emp_id
FROM clinics
WHERE clinic_id = 1)
GROUP BY c_id, emp_id, clinic_id;
1}} S上。
您也可以使用GROUP BY子句而不是DISTINCT。如果您没有使用任何聚合函数,通常GROUP BY将被数据库转换为不同的,但有时它们的行为会有所不同。如果您对此主题感兴趣,还可以看到以下问题:Is there any difference between GROUP BY and DISTINCT
function ovpnParser($con, $pathlog){
$inclients = false;
$handle = fopen($pathlog, "r");
$inclients = false;
$sql2 = "SELECT comName FROM vpn";
$query2 = mysqli_query($con, $sql2);
while(!feof($handle)){
$line = fgets($handle, 4096);
if (substr($line, 0, 11) == "CLIENT_LIST")
{
if (preg_match("/CLIENT_LIST\t{1,}UNDEF(.*)UNDEF/", $line))
{
$inclients = false;
}
else
{
$inclients = true;
}
}
if ($inclients)
{
preg_match("/CLIENT_LIST(.*)UNDEF/", $line, $conteudo);
$partes = preg_split("/\t{1,}/", trim($conteudo[1]));
$sql = "SELECT comName FROM vpn
WHERE comName = '{$partes[0]}'";
$query = mysqli_query($con, $sql);
$numeroDeLinhas = mysqli_num_rows($query);
if ($numeroDeLinhas == 0)
{
$sql = "INSERT INTO vpn (comName, realAddr, virtAddr, byR, byS, since, sinstamp, blockstatus)
VALUES ('{$partes[0]}', '{$partes[1]}', '{$partes[2]}', '{$partes[3]}', '{$partes[4]}', '{$partes[5]}', '{$partes[6]}', 'true')";
$query = mysqli_query($con, $sql);
}
}
$inclients = false;
}
}