में REGEXP का उपयोग करके मैंने यह एक बहुत बड़ा सौदा किया है और मुझे यकीन है कि उत्तर नहीं है, लेकिन मुझे गलत साबित करना अच्छा लगेगा।सिद्धांत 2.x ORM
मैं डीक्यूएल में लिखी गई क्वेरी निष्पादित करना चाहता हूं जिसमें REGEXP ऑपरेशन शामिल है। -
select * from assets
where campaign_id = 1
and fileName REGEXP 'godzilla*'
order by fileName desc
उर्फ
$builder->add('select', 'a.fileName')
->add('from', '\Company\Bundle\Entity\Asset a')
->add('where', 'a.campaign=1')
->...REGEXP MAGIC...
->add('orderBy', 'a.fileName desc');
(मेरा असली regex अभिव्यक्ति अधिक जटिल है यह एक सरल regex है और मैं एक तरह के रूप में किया जा सकता है एहसास, लेकिन यह सिर्फ एक उदाहरण है): उदाहरण के लिए
मैंने सिद्धांत \ ORM \ क्वेरी \ Expr क्लास, साथ ही QueryBuilder क्लास में देखा है। मुझे REGEXP के लिए कोई समर्थन नहीं दिख रहा है। एसओ पर किसी के पास एक पोस्ट है जिसमें कहा गया है कि उन्होंने एक्सप्र क्लास का इस्तेमाल किया था, लेकिन यह वास्तव में काम नहीं करता है (उन्होंने कहा कि यह अनचाहे था)।
किसी भी विचार को डीईसीएल डब्ल्यू/आउट लेखन सीधे एसक्यूएल में REGEXP निष्पादित करने का तरीका है? टीआईए।
ब्लॉगपोस्ट पर बुरा लिंक , क्या यह अब अद्यतित नहीं है (सिद्धांत 1)? –
@ पीटररोडरलंड तय –
ध्यान देने योग्य एक बात: आपको REGEXP के अंत में एक तुलना ऑपरेटर जोड़ना होगा या अन्यथा इसे वापस लाएगा। सिद्धांत के लिए जहां सभी खंडों को तुलना ऑपरेटर होना आवश्यक है, भले ही REGEXP को इसकी आवश्यकता न हो – Patrick