2017-06-22 148 views
-1

我有一個表vehicles有一欄「名稱」SQL查詢使用正則表達式

值存儲像car/teslacar/hondatruck/daimler

我想用查詢表(每個值存儲爲type/brand)只有brand。如果我查找tesla,它應該返回對應於car/tesla的行。我該怎麼做?我正在使用postgres

+0

你卡在哪裏?請顯示您的查詢。你爲什麼認爲'LIKE'不行? –

+0

爲什麼正則表達式只需要'LIKE'%/ tesla''? –

+3

誠實地說,這聽起來像是一個應該重新考慮的數據庫設計 - 除非您有足夠的理由這樣做,否則不要在一個字段中存儲多個值。正如一些人已經表示,如果你真的需要這樣做,你可以使用LIKE。 –

回答

1

你的情況沒有必要在正則表達式中。只需使用老好like

select name 
    from vehicles 
    where name like '%/tesla' 
1

2解決方案可與LIKE操作或選擇查詢與包含操作選擇查詢。

select * from vehicles where name LIKE '%tesla%' 

Select * from vehicles where Contains(name, "tesla");