Log message #4114994

# At Username Text
# Feb 6th 2018, 14:46 h.mavisakalian $set1 = $table->find()->where([‘tags LIKE’ => “%”.$tag1.“%”); $set2 = $table->find()->where([‘tags LIKE’ => “%”.$tag2.“%”);
# Feb 6th 2018, 14:45 h.mavisakalian but I am interested in if you can merge 2 sets of records so there are no duplications
# Feb 6th 2018, 14:45 h.mavisakalian Ok, there is no way to do that using SQL )))
# Feb 6th 2018, 14:19 h.mavisakalian point ))
# Feb 6th 2018, 14:19 h.mavisakalian Hardly )))))) But I get your poit ))
# Feb 6th 2018, 14:19 admad *then
# Feb 6th 2018, 14:19 admad they you would be out of a job
# Feb 6th 2018, 14:18 h.mavisakalian Wouldn’t that be great ))))))
# Feb 6th 2018, 14:18 admad currently it seems you expect the ORM to just read your mind and generate required SQL
# Feb 6th 2018, 14:17 admad it bet it's easy with ORM if you know the sql query you want to achieve.
# Feb 6th 2018, 14:17 hmic h.mavisakalian: the orm can only produce sql, so it can't do anything sql cannot do.
# Feb 6th 2018, 14:17 hmic array_map(explode(...), 'trim'), if your tags are not only "," but ", " seperated
# Feb 6th 2018, 14:17 h.mavisakalian I just wondered if there was an easier way using the ORM.
# Feb 6th 2018, 14:16 h.mavisakalian :slightly_smiling_face:
# Feb 6th 2018, 14:16 admad that's pseudo sql query at best :P
# Feb 6th 2018, 14:14 h.mavisakalian I need something like WHERE tags(string) has any of the values of the hashtags array.
# Feb 6th 2018, 14:13 h.mavisakalian the neon1024 solution is close to what I need.
# Feb 6th 2018, 14:11 admad @h.mavisakalian step 1: figure out the SQL query you need to fetch the required data. Step 2: figure out / ask here how to achieve that query using the ORM
# Feb 6th 2018, 14:08 h.mavisakalian ->find()->where([‘tags IN’ => explode(‘,’, $hashtags)]);
# Feb 6th 2018, 14:08 h.mavisakalian No errors, but it won’t show any data.
# Feb 6th 2018, 14:04 neon1024 `->find()->where(['example IN' => explode(',', $arrayOfThings)`
# Feb 6th 2018, 13:52 h.mavisakalian Any Ideas ?
# Feb 6th 2018, 13:47 h.mavisakalian this is as clear as I can get :slightly_smiling_face:
# Feb 6th 2018, 13:47 h.mavisakalian --------- Lets say this is these are row I am fetching data from: Name: Tags: Post one nature,fitness,music Post two gaming,music Post three nature,travel Now I have a category table like this: Name: Tags: Cat 1 gaming,travel Now when i list categories with foreach: I want to fetch all the records from table one that have the values of the tags field in the category table.
# Feb 6th 2018, 13:41 h.mavisakalian Sorry if I am not clear enough ))
# Feb 6th 2018, 13:40 h.mavisakalian Category one: three,four Category two: one,two
# Feb 6th 2018, 13:39 h.mavisakalian I need to fetch every record in that first table that has the tags specified in that category
# Feb 6th 2018, 13:39 h.mavisakalian so when I list categories
# Feb 6th 2018, 13:39 h.mavisakalian I have another categories table, where I have category name and also tags field
# Feb 6th 2018, 13:38 h.mavisakalian Now
# Feb 6th 2018, 13:38 h.mavisakalian Every row in the table I am fetching data from has a string like I discribed ( these are tags ) : one,two,three,four
# Feb 6th 2018, 13:37 hmic so you want ['one', 'two', 'three', 'four']?
# Feb 6th 2018, 13:36 h.mavisakalian How can I fetch any row that has one of the values from the string2
# Feb 6th 2018, 13:35 h.mavisakalian string1 (table I am fetching data from): one,two,three,four string2: three,four
# Feb 6th 2018, 13:35 hmic you can use where('tags IN' => ['first', 'second', 'third'])
# Feb 6th 2018, 13:34 h.mavisakalian i have 2 strings - values seperated with commas
# Feb 6th 2018, 13:34 h.mavisakalian Let me clarify… came out wrong
# Feb 6th 2018, 13:34 hmic you need a fulltext search (column) to do that
# Feb 6th 2018, 13:34 hmic ah, sql. no. like does not work on arrays, IN does
# Feb 6th 2018, 13:33 hmic in_array()?
# Feb 6th 2018, 13:33 h.mavisakalian find()->where([‘tags LIKE’ => $anyOfThisArraysValues])