我目前在我的sql查詢中有一個邏輯錯誤。我想在查找姓氏和年份之間記錄的名字時顯示記錄。sql - 搜索查詢
這裏是我的代碼:
SELECT
*
FROM
tablename
WHERE
LastName LIKE 'value%'
AND FirstName LIKE 'value%'
AND Year BETWEEN '1900' AND '2017'
我該怎麼辦呢?
我目前在我的sql查詢中有一個邏輯錯誤。我想在查找姓氏和年份之間記錄的名字時顯示記錄。sql - 搜索查詢
這裏是我的代碼:
SELECT
*
FROM
tablename
WHERE
LastName LIKE 'value%'
AND FirstName LIKE 'value%'
AND Year BETWEEN '1900' AND '2017'
我該怎麼辦呢?
也許你的年份列存儲爲整數。如果是這樣,請刪除年份值1900和2017附近的引號,查詢應該按照您的預期工作。
刪除引號有什麼區別呢? MySQL會賠償那個 –
@ Fred-ii-是的,但爲什麼不把它放在第一位呢? –
,如果你使用的是SQL,試試這個:
1年時被存儲爲INT
SELECT
*
FROM
tablename
WHERE
LastName LIKE 'value%'
AND FirstName LIKE 'value%'
AND columnx >= 1900 AND columnx <= 2017
2-時的日期存儲像01-01-1999
然後使用以下
SELECT
*
FROM
tablename
WHERE
LastName LIKE 'value%'
AND FirstName LIKE 'value%'
AND year(columnx) >= 1900 AND year(columnx) <= 2017
* 「我該怎麼做?」 - - 你現在不是這樣做嗎?什麼不在這裏工作?您可能還需要爲此使用括號。 –
看到'value'看起來更像是「爲我寫的」和「猜測我的數據庫模式是什麼樣的」類型的問題 –
什麼是行不通的?查詢看起來很好。你是否得到了你不應該得到的行?你沒有得到你應該得到的行嗎?顯示示例。 –