SQL – 组合多个查询

前端之家收集整理的这篇文章主要介绍了SQL – 组合多个查询前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
嘿我的第一个问题啊Anywho …

sql中还是比较新鲜的,所以我想我可能在这里缺少一些东西。我的问题是我目前有一张充满电话号码的表格。我想查询一下我搜索类似于我的列表的电话号码。所以,例如,我想要找到以’555123’,’555321’和’555987’开头的电话号码。我正常地知道如果你有一个数字的列表,你可以做一个查询,如

SELECT * 
  FROM phonenumbers 
 WHERE number in ('5551234567','5559876543',.... );

有没有办法像这样做呢?如

SELECT * 
  FROM phonenumbers 
 WHERE number in like ('555123%','555321%','555987%'); //I know this doesn't actually work

而不是单独做这个

SELECT * 
  FROM phonenumbers 
 WHERE number like '555123%' 
    or number like '555321%' 
    or number like '555987%'; //Which does work but takes a long time

还是更容易做到这一点,我刚刚失踪?我使用postgres,我不知道是否有任何命令,这将有助于这一点。谢谢!

解决方法

您可以使用SIMILAR TO并将标签与|分开管’555123%| 555321%| 555987%’

例如:

SELECT * 
FROM phonenumbers 
WHERE number SIMILAR TO '555123%|555321%|555987%'

猜你在找的MsSQL相关文章