我有一個名爲FullFilename的字段的SQLite表。現在,我想選擇某個文件夾中的文件行。假設該表包含:從SQLite表中的文件字段中提取目錄
c:\folder\file1.jpg
c:\folder\file2.jpg
c:\folder\subfolder\file1.jpg
c:\anotherfolder\file1.jpg
而我只想選擇「c:\ folder \」中包含文件的行。 不是在子文件夾「c:\ folder \ subfolder \」中。這:
SELECT FullFilename FROM Files WHERE fullfilename LIKE "c:\folder\%"
將無法正常工作,因爲它也給我在子文件夾中的文件。
如何在沒有獲取子文件夾中的文件的情況下提取某個文件夾中的文件行?
編輯
,因爲答案是有點埋在下面留言:這是正確的答案,馬克提供:
SELECT FullFilename FROM Files
WHERE fullfilename LIKE 'c:\folder\%' AND
fullfilename NOT LIKE 'c:\folder\%\%'
我取出下面的()函數,根據 LIKE運算符已經不區分大小寫。
我猜我的問題是不可能的。我決定處理SQL語句之外的目錄提取。 – 2010-08-14 20:00:21
對不起,1月 - 如果你想要文件在c:\ folder \裏面,但不在任何子文件夾內,你可以試試'SELECT FullFilename FROM Files WHERE lower(fullfilename)LIKE'c:\ folder \%'and lower(fullfilename)NOT像'c:\文件夾\%\%'' – 2010-08-14 23:32:06
哇,這實際上很好。這麼簡單。爲什麼我經常監督簡單的解決方案?謝謝馬克。 – 2010-08-15 10:28:15