Инструкция WHERE не работает с числами и датами (SQLite) - PullRequest
0 голосов
/ 25 июня 2018

У меня есть проблема в программе DBlite (мусорная программа, которую я должен использовать для колледжа) с датами и числами в разделе где. Мой код показан ниже:

SELECT Customers_Details_FULL_LOCKED.email
FROM Customers_Details_FULL_LOCKED
LEFT JOIN Purchases_FULL_LOCKED ON Customers_Details_FULL_LOCKED.customer_id 
= Purchases_FULL_LOCKED.Cust_ID
WHERE Purchases_FULL_LOCKED.Purchase_Price = '>20' AND 
Customers_Details_FULL_LOCKED.marketing_opt_in = 'Yes' AND 
Purchases_FULL_LOCKED.Purchase_Date = '<2014-01-01';

Цели: Я хочу, чтобы в моем коде отображалась электронная почта тех, кто совершил покупку более 20 лет, они выбрали маркетинг, а дата покупки - до 2014 года.

Что я знаю:

Я знаю, что оператор opt_in работает, но цена покупки и дата покупки не работают ни по отдельности, ни вместе.

Я также знаю, что для покупной цены не имеет значения, будет ли это CAST в виде десятичной дроби или нет, по-прежнему не работает.

1 Ответ

0 голосов
/ 25 июня 2018

Если Purchase_Price является числовым значением, вам следует сравнить столбец с оператором <, >, >= .. и числовым значением.

Запись Purchase_Price > 20 вместо Purchase_Price = '>20'
Здесь указано: Покупка_Цена должна быть больше 20 .
Вместо Покупка_Цена равна тексту '> 20'

То же самое с датой, но вы должны сравнить значение даты

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...