显示表中其他表不包含的行

时间:2019-09-20 11:29:10

标签: sql mariadb

基本上,我想显示某个表中的所有数据,而另一个表在特定条件下不包含该数据。

我想向所有尚未填写空房的人展示。这是我要做的事情,看看谁在SQL中填写了他们的可用性:

    <nav class=""id="menusystem">
        <ul><li class="active"><span><i class="fa fa-building-o"></i> Home</span></li>
            <li><span><i class="fa fa-calendar-o"></i> Book Now</span></li>
            <li><span><i class="fa fa-male"></i> Service Prices</span></li>
            <li><span><i class="fa fa-th"></i> Product Prices</span></li>
            <li><span><i class="fa fa-thumbs-o-up"></i> Our Testimonials</span></li>
            <li><span><i class="fa fa-group"></i> Our Events</span></li>
            <li><span><i class="fa fa-envelope-o"></i> Contact Us</span></li>
        </ul>
    </nav>

这显示了今天有空的人。

现在,我要向尚未展示其空闲状态的人显示。因此,我想显示表“ 信息”中的所有人,而不是表“ 可用性”中日期= 2019-09-20 的所有人。

我该怎么做?

2 个答案:

答案 0 :(得分:1)

我认为以下应该这样做。 它列出了Info中所有在特定日期没有可用记录的内容。

SELECT  I.* 
FROM    Info I
WHERE NOT EXISTS (
    SELECT 1
    FROM    Availability A
    WHERE   A.availability_info_id = I.info_id
        AND A.availability_date = '2019-9-20' -- today
)

答案 1 :(得分:1)

eval_points = linspace(0,T_max,1000);
historic_weights = rand(100,1); % Note transposed from original
historic_times   = rand(100,1);
eval_loop = reshape(0:T_max,1,1,[]); % size = [1,1,10000];

result = sum(historic_weight.*sum(Z_func(eval_points - historic_times + 1440*floor(historic_times/1440) - 1440*eval_loop, omega ),3),1);