Do not speak Portuguese? Translate this site with Google or Bing Translator
Funcao FIND_IN_SET() com a cláusula WHERE do MySQL

Posted on: April 16, 2021 11:14 AM

Posted by: Renato

Categories: mysql mysqli database

Views: 1937

Quando usamos a função FIND_IN_SET () na cláusula WHERE, ela pesquisa a string de pesquisa dentro da string dada conforme especificado no argumento e recupera todas as colunas das linhas em questão. 

Neste exemplo, estamos obtendo as colunas da tabela ‘Aluno’ onde as linhas têm o valor de nome como ‘Renato’. Aqui, a função FIND_IN_SET () irá pesquisar a string de pesquisa ‘Renato’ a partir dos valores da coluna ‘Nome’.

mysql> Select Id, Name, Address, Subject from student WHERE FIND_IN_SET('Renato',Name);

+------+--------+---------+-----------+
| Id   | Name   | Address | Subject   |
+------+--------+---------+-----------+
| 1    | Renato | Goiania | Computers |
| 20   | Renato | Udia    | Computers |
+------+--------+---------+-----------+

Outro Exemplo sql:

SELECT * FROM table_b 
WHERE FIND_IN_SET ('22', outro_ID)
AND valor = 200;

#PHP
$sql = "SELECT * FROM table_b WHERE FIND_IN_SET ({$user->outId}, outro_ID) AND valor = {$user->chainValor} ";


MYSQL FIND_IN_SET COM MULTIPLE SEARCH STRING

Na função mysql find_in_set possível verificar apenas strings como esta:

find_in_set('a','a,b,c,d')

Mas não é possível Pesquisar assim:

find_in_set('a,b,c,d','a,b,c,d')

se quisermos pesquisa múltipla, o texto só é possível assim:

find_in_set('a', 'a,b,c,d') OR find_in_set('b', 'a,b,c,d') OR find_in_set('c', 'a,b,c,d')

No formato acima é muito difícil de implementar em todos os lugares, mas usaremos o seguinte truque fornecido facilmente para atingir seu objetivo

A consulta a seguir para usar e obter o resultado facilmente sem a função find_in_set

SELECT * from table_name WHERE CONCAT(",", `id`, ",") REGEXP ",(1|2|3),"

PHP COM Mysql Sem Find_in_set

Por exemplo, temos o valor do array, mas queremos resultados com base no valor do array que implementa este código e obtém o resultado

Valor de suposição:

a[]=array(10,12,13,14,15);

$test="SELECT * from table_name WHERE";
$tot=count($a);
$counter=1;
foreach($a as $val)
{
 echo $counter;
 $test .= " id=$val";
 if($counter !=$tot)
 {
 $test .=" OR ";
 }
 $counter++;

echo $test;
 mysql_query($test); ?>
 
 Finalmente, obtemos uma saída como esta

SELECT * from table_name WHERE id= 10 OR id = 12 OR id= 13  ..etc;


2

Share

Donate to Site


About Author

Renato

Developer

Add a Comment

Blog Search


Categories

OUTROS (15) Variados (109) PHP (130) Laravel (157) Black Hat (3) front-end (28) linux (113) postgresql (39) Docker (26) rest (5) soap (1) webservice (6) October (1) CMS (2) node (7) backend (13) ubuntu (54) devops (25) nodejs (5) npm (2) nvm (1) git (8) firefox (1) react (6) reactnative (5) collections (1) javascript (6) reactjs (7) yarn (0) adb (1) Solid (2) blade (3) models (1) controllers (0) log (1) html (2) hardware (3) aws (14) Transcribe (2) transcription (1) google (4) ibm (1) nuance (1) PHP Swoole (5) mysql (31) macox (4) flutter (1) symfony (1) cor (1) colors (2) homeOffice (2) jobs (3) imagick (2) ec2 (1) sw (1) websocket (1) markdown (1) ckeditor (1) tecnologia (14) faceapp (1) eloquent (14) query (4) sql (40) ddd (3) nginx (9) apache (4) certbot (1) lets-encrypt (3) debian (11) liquid (1) magento (2) ruby (1) LETSENCRYPT (1) Fibonacci (1) wine (1) transaction (1) pendrive (1) boot (1) usb (1) prf (1) policia (2) federal (1) lucena (1) mongodb (4) paypal (1) payment (1) zend (1) vim (4) ciencia (6) js (1) nosql (1) java (1) JasperReports (1) phpjasper (1) covid19 (1) saude (1) athena (1) cinnamon (1) phpunit (2) binaural (1) mysqli (3) database (42) windows (6) vala (1) json (2) oracle (1) mariadb (4) dev (12) webdev (24) s3 (4) storage (1) kitematic (1) gnome (2) web (2) intel (3) piada (1) cron (2) dba (18) lumen (1) ffmpeg (2) android (2) aplicativo (1) fedora (2) shell (4) bash (3) script (3) lider (1) htm (1) csv (1) dropbox (1) db (3) combustivel (2) haru (1) presenter (1) gasolina (1) MeioAmbiente (1) Grunt (1) biologia (1) programming (22) performance (3) brain (1) smartphones (1) telefonia (1) privacidade (1) opensource (3) microg (1) iode (1) ssh (3) zsh (2) terminal (3) dracula (1) spaceship (1) mac (2) idiomas (1) laptop (2) developer (37) api (4) data (1) matematica (1) seguranca (2) 100DaysOfCode (9) hotfix (1) documentation (1) laravelphp (10) RabbitMQ (1) Elasticsearch (1) redis (2) Raspberry (4) Padrao de design (4) JQuery (1) angularjs (4) Dicas (39) Kubernetes (2) vscode (2) backup (1) angular (3) servers (2) pipelines (1) AppSec (1) DevSecOps (4) rust (1) RustLang (1) Mozilla (1) algoritimo (1) sqlite (1) Passport (1) jwt (4) security (2) translate (1) kube (1) iot (1) politica (2) bolsonaro (1) flow (1) podcast (1) Brasil (1) containers (2) traefik (1) networking (1) host (1) POO (2) microservices (2) bug (1) cqrs (1) arquitetura (2) Architecture (3) sail (3) militar (1) artigo (1) economia (1) forcas armadas (1) ffaa (1) autenticacao (1) autorizacao (2) authentication (4) authorization (2) NoCookies (1) wsl (4) memcached (1) macos (2) unix (2) kali-linux (1) linux-tools (5) apple (1) noticias (2) composer (1) rancher (1) k8s (1) escopos (1) orm (1) jenkins (4) github (5) gitlab (3) queue (1) Passwordless (1) sonarqube (1) phpswoole (1) laraveloctane (1) Swoole (1) Swoole (1) octane (1) Structurizr (1) Diagramas (1) c4 (1) c4-models (1) compactar (1) compression (1) messaging (1) restfull (1) eventdrive (1) services (1) http (1) Monolith (1) microservice (1) historia (1) educacao (1) cavalotroia (1) OOD (0) odd (1) chatgpt (1) openai (3) vicuna (1) llama (1) gpt (1) transformers (1) pytorch (1) tensorflow (1) akitando (1) ia (1) nvidia (1) agi (1) guard (1) multiple_authen (2) rpi (1) auth (1) auth (1) livros (2) ElonMusk (2) Oh My Zsh (1) Manjaro (1) BigLinux (2) ArchLinux (1) Migration (1) Error (1) Monitor (1) Filament (1) LaravelFilament (1) replication (1) phpfpm (1) cache (1) vpn (1) l2tp (1) zorin-os (1) optimization (1) scheduling (1) monitoring (2) linkedin (1) community (1) inteligencia-artificial (2) wsl2 (1) maps (1) API_KEY_GOOGLE_MAPS (1) repmgr (1) altadisponibilidade (1) banco (1) modelagemdedados (1) inteligenciadedados (4) governancadedados (1) bancodedados (2) Observability (1) picpay (1) ecommerce (1)

New Articles



Get Latest Updates by Email