SQL嵌套查询疑问:如何基于非输出列条件筛选指定输出列
优化SQL筛选查询:仅输出指定列,用非输出列筛选
你当前的SQL语句用了不必要的嵌套子查询,其实可以直接简化:
优化后的查询语句
SELECT dateOfBooking, amORpm, conferenceRoomID, noDelegates, cateringInfo , allergyInfo, specialAccessInfo, bottledWaterNeeded, projectorNeeded , lecternNeeded FROM dbo.tableBookingSlots WHERE bookingID = @bookingID;
说明
你要实现的是用bookingID筛选行,但不把它包含在最终输出,完全不需要嵌套子查询。原写法里的内层SELECT *会查询所有列,再在外层过滤出需要的列,属于冗余操作。直接在主查询中指定要输出的列,同时通过WHERE子句用bookingID筛选数据,既简洁高效,又能满足你的需求——bookingID不会出现在结果集中,只起到筛选作用。
内容的提问来源于stack exchange,提问作者Pete
相关产品推荐
相关产品推荐

