Неправильный результат в select запросе с REGEXP и IF

207
26 ноября 2016, 20:11
SELECT p.*, IF(p.PriceReductionCheck, p.PriceReductionRetail, '') as PriceReduction
  GROUP BY p.Id HAVING PriceReduction REGEXP '0.75' 
  ORDER BY p.Name;

Результат

Id PriceReduction
1
2 0.5

.

SELECT p.*, IF(p.PriceReductionCheck, p.PriceReductionRetail, '') as PriceReduction 
  GROUP BY p.Id HAVING PriceReductionRetail REGEXP '0.75' 
  ORDER BY p.Name;

Результат

Id PriceReduction
1 0.75
2 0.75

PriceReduction** REGEXP '0.75' вернул неправильный результат. Как исправить 1 запрос, чтобы он работал правильно по PriceReduction?

Запрос полностью

SELECT SQL_CALC_FOUND_ROWS 0 AS isreadonly, p.*, IF(p.SpecialPriceCheck OR p.iscombo, CASE WHEN p.mmType = 'mixAndMatch' THEN 'Special: Mix & Match' WHEN p.mmType = 'priceModifier' THEN 'Special: Price Modifier' WHEN p.mmType = 'priceEachMix' THEN 'Special: Price Each Mix' ELSE '' END , '') as mType, IF(p.PriceReductionCheck, p.PriceReductionRetail, '') as PriceReduction, IF(p.NewPriceCheck, p.NewPriceRetail, '') as NewPrice, ( SELECT sum(pv.ReimburseRetail) FROM PromotionsVendors pv WHERE pv.PromotionId = p.Id AND pv.ReimburseCheck = 1 ) as Reimburse, ( SELECT pct.Date FROM PriceChangeTemp pct WHERE pct.Id = p.Id ) as LastSaleDate, GROUP_CONCAT(DISTINCT pvAv.name SEPARATOR ', ') as ReimburseVendor FROM Promotions p LEFT JOIN PromotionsVendors pv ON pv.promotionid = p.id LEFT JOIN AccountVendors pvAv on pvAv.vendorid=pv.vendorid and pvAv.accountid = '46' WHERE p.AccountId='46' AND (p.indefenetly = 1 OR p.dateTo >= CURDATE()) AND ( p.Id!='') GROUP BY p.Id HAVING PriceReduction REGEXP '0.75' ORDER BY p.Name limit 0, 50
READ ALSO
Вопрос насчет обработчика php

Вопрос насчет обработчика php

Созрел такой вопрос: Есть форма, пользователь вводит данные, форма передаёт на обработчик, например sendphp, тот в свою очередь соединяется с mySql и вносит...

261
php при добавлении в БД кракозябры

php при добавлении в БД кракозябры

добавляю записи в бд через ajaxПри добавлении запись все русские буквы превращаются в Ðиколай

291